rewrote in idiomatic IcedCoffeeScript

all except (un)memoize and queue