fix performance regression in reduce()

The change to `.reduce()` in #29 to bring it more inline with the native implementation caused a nasty performance regression, as much as 60% in some cases. By avoiding looking at `arguments` at all we can bring it back up to speed, a simple `undefined` check is much faster.