Much better strategy for calling native Array methods.

Compare an object's function with === to the native
version before calling it.  That is, don't just assume that
because an object has a 'filter' property thats a function,
that we should call that in _.filter().

Expose the native methods found as _.native

On the way towards being able to turn off native implementations,
though there are tradeoffs...
(cherry picked from commit bb250e7205b9e0b481233ae2bcf542d2e288dfd7)