Separate the report generation from display a little better.
Upgrade to Clojure 1.5.0

(although it's still not very idiomatic in places)