CLJS-358: eliminate state shared among Rhino REPL envs; can now restart REPL / use >1 Rhino REPL per Clojure runtime
CLJS-460: make MultiFn use custom hierarchy when specified

Includes a basic test.
`get-in` behaves incorrectly on values

Values which don't satisfy `ILookup` are handled incorrectly.
CLJS-459: fix reduce-kv node visit order for sorted maps

Includes a basic test.
CLJS-461: preserve metadata on automatic map conversions

Also includes basic tests based on the failing form from the ticket.
CLJS-464: get-in throws ILookup error if not-found not provided

CLJS-458 added the correct satisfies? check, but the two arity case of
get-in was implemented via reduce instead of delegating to the
three arity case.
CLJS-418: Add g-closure-library dependency on third-party

This adds a dependency from the google-closure-library on
google-closure-library-third-party to resolve CLJS-418.
Revert "Warn on invalid js forms. refs #455"

This reverts commit b2df2c2a69a4f1c9be8d698b74122c98b1e22491.
link to community run user list
Added comparator function
Updated implemented functions
CLJS-470: fix `resolve-var` (.contains s ".") case

The issue was that `defprotocol` in the core.clj macros file emits
the native type dispatch cases with `foo.-bar`, `resolve-var`
would treat this as normal var resolution which it is not - use of
the `.` in symbols without a namespace clearly represents some
kind of interop or implementation detail.

`resolve-var` no longers warns on symbols that include `.` but not
`/`.
CLJS-418: Update POM template to new G.Closure release
move simple-keys? test out of the analyzer into the compiler
Symbol deftype

Added Symbol deftype. Added INamed protocol. ObjMap no longer applies
to symbol at the moment. Fixed emission for symbols. Update name and
namespace fn to check for INamed protocol. Symbol support metadata and
included symbol metadata.
add array-map benchmark, switch to direct protocol calls in PersistentArrayMap
Prune code by delaying make-hierarchy invocation.

Causes compilation of a near-empty .cljs file to shrink by 984 bytes.
add obj-map benchmarks, add -lookup benchmark for array-map
significant improves to PersistentArrayMap, on V8 PersistentArrayMap
is now faster than ObjMap for 1 & 2 keys, and only slightly slower for
3 keys. PersistentArrayMap map is 10X faster than ObjMap for assoc
1, 2, 3 new keys.
cleanup PersistentArrayMap perf enhancements