Save cljsc env atom between builds; add support for source maps

* The ClojureScript compiler environment atom is now saved and reused
  for repeated builds (like when in watcher mode, for example). This
  makes compilation go a lot faster.

* Add support for ClojureScript source maps. Source maps are supported
  in all optimization levels except `:none`. Enable it by setting the
  `:source-map` option to `true` in the compiler option map.