A Binary Search Tree (BST) is a data structure consisting of nodes, each of which has a value and references to two other nodes; one with a value larger than the current node's value, and one with a value smaller. If there are no values larger (or smaller) than the value at the current node, then the reference contains the null pointer.
Consequentially, operations on binary trees are most naturally defined recursively. As such, Clojure is perfect for this week's task!