overhaul for Silk 0.2.0 clojure rewrite