[Truffle] Basic new implementation of large hashes.
[Truffle] Fix default block in buckets hash.
[Truffle] Pull out some hash classes to the top level.
[Truffle] Tidy up RubyHash.
[Truffle] Make finding a bucket a node.
[Truffle] Some documentation of hash.
[Truffle] Fix a couple of hash bugs.
[Truffle] Make the bucket chain singly linked.
[Truffle] Rename buckets entries.
[Truffle] We don't need HashSearchResult as a DSL type at all.
[Truffle] Change hash guard terminology to PackedArray or Buckets
[Truffle] Make the packed array guard for hash, which is complicated by covariance, just the negation of the other two.
Revert "Try speeding up travis by only running one JDK, one platform."

This reverts commit 8ddeaafec725d650688c019b10644b86c00dd8b6.
Use container-based infrastructure to speed up
Skip installing Java 8 with sudo
Merge pull request #2317 from jruby/ha-feature-sudo-false

Move to container-based infrastructure and cache maven artifacts
[Truffle] Implement Class#inherited and call it when a subclass is added.
Silence errors in ensure here, so we can see original failure.
Disable meaningless and unpredictable spec for #2332.
[Truffle] Remove debug line left in Struct.