Optimize underscore proxy methods

Not sure how the maintainers will feel about this . The greatest benefit will clearly be for smaller collections/models.

You can do away with the code to support for length 2 and 4 if you'd rather (`_.filter(_.keys(_), function(name) {return _[name].length === 2})`)

http://jsperf.com/backbone-underscore-funcs