Wrapped tests in (time), because solution on 4clojure was failed with
Timed out.
4clojure version (all helper functions combined together in letfn).