Solved problem 164, although (take X) always process on a limited list.

I don't return the infinite list from the (traverse), but tests expect
it to be infinite? Interesting to see other solutions, to learn new
Clojure construct.