local names, iteration => eduction
Don't initialize classes during import

"import" no longer causes the imported class to be initialized. This
change better matches Java's import behavior and allows the importing of
classes that do significant work at initialization time which may fail.
This semantics change is not expected to effect most code, but certain
code may have depended on behavior that is no longer true.

1) importing a Class defined via gen-class no longer causes its defining
namespace to be loaded, loading is now deferred until first reference. If
immediate loading of the namespace is needed, "require" it directly.
2) Some code may have depended on import to initialize the class before it
was used. It may now be necessary to manually call (Class/forName
"org.example.Class") when initialization is needed. In most cases, this
should not be necessary because the Class will be initialized
automatically before first use.

Also changes a test that failed after making this change which depended on
a few implementation details that we don't necessarily want to guarantee.

1) It expected that loading the Class results in loading the namespace
(which isn't promised by gen-class, it's just the default)
2) It expected that importing the Class results in initializing the Class
3) It expected that initializing the Class results in adding some default vars
to the namespace (-toString for instance)

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix CLJ-1330: make top-level named functions classnames don't clash with def'ed function classnames

Signed-off-by: Stuart Halloway <stu@cognitect.com>
make sure Java files respect Reduced

deref reduced vals

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1535 - boxed math warnings only appear if (set! *unchecked-math* :warn-on-boxed))

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1549 Split IReduce into IReduceInit

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Implement Iterable in clojure.core/bean.

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1297: Extra hint in exception if loading file containing - fails

Signed-off-by: Stuart Halloway <stu@cognitect.com>
atom interface

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1408 - make cached string value of Keyword and Symbol transient

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix a typo

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix param name reference in defmulti's docstring

Signed-off-by: Stuart Halloway <stu@cognitect.com>
CLJ-1417 typo in clojure.java.io/input-stream docstring

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix a typo

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix a typo

Signed-off-by: Stuart Halloway <stu@cognitect.com>
Fix a typo

Signed-off-by: Stuart Halloway <stu@cognitect.com>
It's just a small typo

Signed-off-by: Stuart Halloway <stu@cognitect.com>
reduced handling fixes CLJ-1557
Merge remote-tracking branch 'upstream/master'