hijack = function (obj, fnName) {
			var origin = obj[fnName];

			headHandler[fnName] = [];
			tailHandler[fnName] = [];

			obj[fnName] = function () {
				var args = util.toArray(arguments),
					ret;

				args = runHandlers(headHandler[fnName], obj, args, true);
				ret = origin.apply(obj, args);
				return runHandlers(tailHandler[fnName], obj, [ ret ], false);
			};
		}
Wrap a member function to enable adding head&tail handlers.
@param obj {Object}
@param fnName {string}