code: function (start, length) {
  		var removed, item;
  		if (arguments.length < 1) {
  			start = 0;
  		}
  		if (arguments.length < 2) {
  			length = this.length - start;
  		}
  		removed = [];
  		while (start < this.length && length-- > 0) {
  			item = this[start];
  			$Array.splice.call(this, start, 1);
  			this.trigger(EVENT_REMOVE, item);
  			removed.push(item);
  		}
  		return removed;
  	}
docs: Remove items from the array
  @param {int=} start Start index. If omitted, will start at 0.
  @param {int=} length Number of items to remove. If omitted, will remove
  all items until the end of the array.
  @return {Array} Collection of removed items
  @fires remove