Data Structures in Clojure: Binary Search Trees – Macromancy