Revert "Move PushbackReader to core.cljs."

This reverts commit eaa8eebb3296c26b318ca636d9dbed09a35f7734.

Having it in core.cljs doesn't really clean up dependencies and there
are tighter relationships between the push-back-reader and the other
read functions in reader.cljs.

Conflicts:

	src/cljs/cljs/core.cljs
Fix typo in quick.cljs test.
Add File/file ops to io.cljs. Restore analyzer/compiler file routines.

- Add File type, file I/O, path operations to src/cljs/cljs/io.cljs.
- Restore analyze-file in analyzer.cljs
- Restore compile-file, compile-root and other file related functions
  to compiler.cljs.
- Copy ns-snap (namespace snapshot) from src/clj/cljs/compiler.cljs to
  compile-file*.