code: function methodize(fn) {
      return function() {
        var args = [this];
        args.push.apply(args, arguments);
        return fn.apply(null, args);
      };
    }
docs: Wraps a function and passes `this` to the original function as the
  first argument.
  
  @private
  @param {Function} fn The function to be wrapped.
  @returns {Function} The new function.