code: function(i, value, delaySort)
    {
      AP.splice.call( this, i, 0, value );
  
      this.trigger( Collection.Events.Add, [this, value, i] );
  
      if ( !delaySort )
      {
        this.sort( undefined, undefined, true );
      }
  
      return this;
    }
docs: Inserts an element into this collection at the given index - sorting the
  collection if a comparator is set on this collection and `delaySort` is not
  specified or a true value.
  
  ```javascript
  var c = Rekord.collect(1, 2, 3, 4);
  c.insertAt( 0, 0 ); // [0, 1, 2, 3, 4]
  c.insertAt( 2, 1.5 ); // [0, 1, 1.5, 2, 3, 4]
  ```
  
  @method
  @memberof Rekord.Collection#
  @param {Number} i -
  The index to insert the element at.
  @param {Any} value -
  The value to insert into the collection.
  @param {Boolean} [delaySort=false] -
  Whether automatic sorting should be delayed until the user manually
  calls {@link Rekord.Collection#sort sort}.
  @return {Rekord.Collection} -
  The reference to this collection.
  @emits Rekord.Collection#add
  @emits Rekord.Collection#sort