Initial implementation of ArrayNode
Implemented and optimized ArrayNode. Remove iteration comparisons.

Removed Javersion vs Clojure iteration comparisons as they are unfair
one way or another: iterator() is by far unfair for Clojure as it is
implemented on top of immutable ISeq. On the other hand Javersion
doesn't (at least yet) implement reduce that could be fairly matched
with Clojure's kvreduce.
Reduce memory footprint by not caching hash's

Requires only slightly more cpu.
Reorganize tests for easier only Javersion or Clojure runs
Results from air
Simplify check.

Tried explicit childCount instead of Integer.bitCount. Didn't appear to
be useful.
Merge remote-tracking branch 'origin/master' into persistent-rb-tree
WIP on red black tree and generalizing internals