Currying RFC

Automatic currying of all functions and closures
Also, what does `foo()` do? For uniformity, it 'should' just return a closure around `foo`, since, if `foo` takes *n* args, it's passing 0 out of *n*, and thus should return a closure taking *n* args itself. The worst part is when `n == 0`.