lib/abaaso.js
function ( obj, arg, start, offset ) {
		var fn  = typeof arg === "function",
		    l   = obj.length,
		    i   = !isNaN( start ) ? start : 0,
		    nth = !isNaN( offset ) ? i + offset : l - 1;

		if ( nth > ( l - 1) ) {
			nth = l - 1;
		}

		while ( i <= nth ) {
			obj[i] = fn ? arg( obj[i] ) : arg;
			i++;
		}

		return obj;
	}
function ( obj, arg, start, offset ) {
		var fn  = typeof arg === "function",
		    l   = obj.length,
		    i   = !isNaN( start ) ? start : 0,
		    nth = !isNaN( offset ) ? i + offset : l - 1;

		if ( nth > ( l - 1) ) {
			nth = l - 1;
		}

		while ( i <= nth ) {
			obj[i] = fn ? arg( obj[i] ) : arg;
			i++;
		}

		return obj;
	}
function ( obj , arg , start , offset ) { var fn = typeof arg === "function" , l = obj . length , i = ! isNaN ( start ) ? start : 0 , nth = ! isNaN ( offset ) ? i + offset : l - 1 ; if ( nth > ( l - 1 ) ) { nth = l - 1 ; } while ( i <= nth ) { obj [ i ] = fn ? arg ( obj [ i ] ) : arg ; i ++ ; } return obj ; }
Fills `obj` with the evalution of `arg`, optionally from `start` to `offset`

@method fill
@param  {Array}  obj   Array to fill
@param  {Mixed}  arg   String, Number of Function to fill with
@param  {Number} start [Optional] Index to begin filling at
@param  {Number} end   [Optional] Offset from start to stop filling at
@return {Array}        Filled Array
Fills obj with the evalution of arg optionally from start to offset