More CoffeeScript!

This adds some idiomatic coffeescript stuff.

First, use `args...` to expand the argument list, instead of iterating over it manually. This will also allow CoffeeScript to re-use the same `[].slice` reference in the long run.

Second, use a `for/in/when` construct as a map when going through the `@boxes` to avoid the index and the counter.

Don't merge this just yet, I want to have another look.