Examples of ways in which to work with stateful data in Clojure