index.js
function _set() {
	var self = this;
	argy(arguments)
		.ifForm('', function() {})
		.ifForm('string scalar|array|object|date|regexp|null', function(id, value) {
			self._setRaw(id, value);
		})
		.ifForm('object', function(obj) {
			for (var key in obj)
				self._setRaw(key, obj[key]);
		})
		.ifForm('string function', function(id, callback) {
			self._setRaw(id, callback.call(this));
		})
		.ifForm('function', function(callback) { // Expect func to return something which is then processed via _set
			self._set(callback.call(this));
		})
		.ifForm(['string', 'string undefined'], function(id) {
			self._setRaw(id, undefined);
		})
		.ifFormElse(function(form) {
			throw new Error('Unknown call style for .set():' + form);
		});

	return self;
}
function _set() {
	var self = this;
	argy(arguments)
		.ifForm('', function() {})
		.ifForm('string scalar|array|object|date|regexp|null', function(id, value) {
			self._setRaw(id, value);
		})
		.ifForm('object', function(obj) {
			for (var key in obj)
				self._setRaw(key, obj[key]);
		})
		.ifForm('string function', function(id, callback) {
			self._setRaw(id, callback.call(this));
		})
		.ifForm('function', function(callback) { // Expect func to return something which is then processed via _set
			self._set(callback.call(this));
		})
		.ifForm(['string', 'string undefined'], function(id) {
			self._setRaw(id, undefined);
		})
		.ifFormElse(function(form) {
			throw new Error('Unknown call style for .set():' + form);
		});

	return self;
}
Set a context items value
Not to be confused with `set()` which is the chainable external visible version of this
Unlike `set()` this function sets an item of _context immediately
@access private
@see _setRaw()