rewrote ImageCache with Clojure