code: function ( obj, origin ) {
  		var o = obj,
  		    s = origin;
  
  		utility.iterate( s, function ( v, k ) {
  			var getter, setter;
  
  			if ( !( v instanceof RegExp ) && typeof v === "function" ) {
  				o[k] = v.bind( o[k] );
  			}
  			else if ( !(v instanceof RegExp ) && !(v instanceof Array ) && v instanceof Object ) {
  				if ( o[k] === undefined ) {
  					o[k] = {};
  				}
  
  				utility.alias( o[k], s[k] );
  			}
  			else {
  				getter = function () {
  					return s[k];
  				};
  
  				setter = function ( arg ) {
  					s[k] = arg;
  				};
  
  				utility.property( o, k, {enumerable: true, get: getter, set: setter, value: s[k]} );
  			}
  		});
  
  		return obj;
  	}
docs: Aliases origin onto obj
  
  @method alias
  @param  {Object} obj    Object receiving aliasing
  @param  {Object} origin Object providing structure to obj
  @return {Object}        Object receiving aliasing