Massive speed-up by switching to params

An ~12x speed-up by switching from using an array parameter to a parameter list, still allowing us to pass in an array of values using `.apply()`. 

As long as we stick to well-known optimization principles regarding the use of the `arguments` array ([see this](https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments)) we should be ok. 

I'm almost thinking I've done something wrong here, it can't be this much faster! would appreciate your input.