project re-implementation in ClojureScript/Om