function defer() {
	var self = this;
	argy(arguments)
		.ifForm('', function() {})
		.ifForm('function', function(callback) {
			self._struct.push({ type: 'deferArray', payload: [callback] });
		})
		.ifForm('string function', function(id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', payload: payload });
		})
		.ifForm('array', function(tasks) {
			self._struct.push({ type: 'deferArray', payload: tasks });
		})
		.ifForm('object', function(tasks) {
			self._struct.push({ type: 'deferObject', payload: tasks });
		})
		.ifForm('array function', function(preReqs, callback) {
			self._struct.push({ type: 'deferArray', prereq: preReqs, payload: [callback] });
		})
		.ifForm('string string function', function(preReq, id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: [preReq], payload: payload });
		})
		.ifForm('array string function', function(preReqs, id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: preReqs, payload: payload });
		})
		.ifForm('string array function', function(id, preReqs, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: preReqs, payload: payload });
		})
		.ifFormElse(function(form) {
			throw new Error('Unknown call style for .defer():' + form);
		});

	return self;
}
function defer() {
	var self = this;
	argy(arguments)
		.ifForm('', function() {})
		.ifForm('function', function(callback) {
			self._struct.push({ type: 'deferArray', payload: [callback] });
		})
		.ifForm('string function', function(id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', payload: payload });
		})
		.ifForm('array', function(tasks) {
			self._struct.push({ type: 'deferArray', payload: tasks });
		})
		.ifForm('object', function(tasks) {
			self._struct.push({ type: 'deferObject', payload: tasks });
		})
		.ifForm('array function', function(preReqs, callback) {
			self._struct.push({ type: 'deferArray', prereq: preReqs, payload: [callback] });
		})
		.ifForm('string string function', function(preReq, id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: [preReq], payload: payload });
		})
		.ifForm('array string function', function(preReqs, id, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: preReqs, payload: payload });
		})
		.ifForm('string array function', function(id, preReqs, callback) {
			var payload = {};
			payload[id] = callback;
			self._struct.push({ type: 'deferObject', prereq: preReqs, payload: payload });
		})
		.ifFormElse(function(form) {
			throw new Error('Unknown call style for .defer():' + form);
		});

	return self;
}
function defer ( ) { var self = this ; argy ( arguments ) . ifForm ( '' , function ( ) { } ) . ifForm ( 'function' , function ( callback ) { self . _struct . push ( { type : 'deferArray' , payload : [ callback ] } ) ; } ) . ifForm ( 'string function' , function ( id , callback ) { var payload = { } ; payload [ id ] = callback ; self . _struct . push ( { type : 'deferObject' , payload : payload } ) ; } ) . ifForm ( 'array' , function ( tasks ) { self . _struct . push ( { type : 'deferArray' , payload : tasks } ) ; } ) . ifForm ( 'object' , function ( tasks ) { self . _struct . push ( { type : 'deferObject' , payload : tasks } ) ; } ) . ifForm ( 'array function' , function ( preReqs , callback ) { self . _struct . push ( { type : 'deferArray' , prereq : preReqs , payload : [ callback ] } ) ; } ) . ifForm ( 'string string function' , function ( preReq , id , callback ) { var payload = { } ; payload [ id ] = callback ; self . _struct . push ( { type : 'deferObject' , prereq : [ preReq ] , payload : payload } ) ; } ) . ifForm ( 'array string function' , function ( preReqs , id , callback ) { var payload = { } ; payload [ id ] = callback ; self . _struct . push ( { type : 'deferObject' , prereq : preReqs , payload : payload } ) ; } ) . ifForm ( 'string array function' , function ( id , preReqs , callback ) { var payload = { } ; payload [ id ] = callback ; self . _struct . push ( { type : 'deferObject' , prereq : preReqs , payload : payload } ) ; } ) . ifFormElse ( function ( form ) { throw new Error ( 'Unknown call style for .defer():' + form ) ; } ) ; return self ; }
}}} 
Queue up a function(s) to execute as deferred - i.e. dont stop to wait for it
@param {array|Object|function} The function(s) to execute as a defer
@return {Object} This chainable object
}}} Queue up a function ( s ) to execute as deferred - i . e . dont stop to wait for it