Remove top-level forms while supporting REPL experimentation

Got tired of creating caches during compilation :)
Add cache -main, and get uberjar working