Implementing HyperNEAT and CPPN's in Clojure