CLJS-528: Warns on any attempted extension of protocols to base JavaScript types, using the new warning system.
fix repl warnings
default-warning-handler* -> error-message
extra -> info
tweak inlining data structure macros so they return empty collections
need to copy over compile-root files if last modified changed for source
maps
bump version
don't inline back into literal, core.async unhappy about this as it
converts literals into function calls
hash-set duplicate key regression
Reading comments skips an extra line, because \n is not identical to ch

Signed-off-by: Chris Granger <ibdknox@gmail.com>
CLJS-660: keyword fn behavior inconsistent with Clojure
CLJS-663: keyword too permissive on inputs
2024 -> 2030
easier way to print via console.log
support *print-length*
CLJS-647: Evaluate expressions for js-obj keys

JS objects are constructed in three phases. First, an object is
constructed using all key-value pairs with string literals as
their keys. Second, object keys are set for the key-value pairs
with symbols as their keys. Lastly, remaining key-value pairs
are let-bound, evaluated, and their keys are set via the
let-bound gensyms.
CLJS-669: fix resolution of namespaced keywords that use :require-macros aliases
wrong array-map threshold
refactor source maps in compiler.clj, now 1 dynamic var instead of 3
emit source map info for every AST node not just vars