Ditch Array.prototype methods in favor of fast array helpers

Faster, and makes the code nicer, imho.  This is a precursor to handling Arguments objects in when/function et. al., as reported by @phated via IRC.
just a heads-up, passing the arguments object to anything but apply, makes v8 currently un-happy.