SI-5652 Mangle names of potentially public lambda lifted methods.

This can happen if they are accessed from an inner class. If a
subclass is happens to lift a public method to the same name,
a VerifyError ensues.

The enclosed tests:
 - demonstrate the absense of the VerifyError
 - show the names generated for the lifted methods (which are
   unchanged if not called from an inner class, or if lifted
   into a trait implementation class.)
 - ensure that the callers are rewritten to call the correct
   method when multiple with the same name are lifted.

It's not ideal that this phase needs a priori knowledge of the
later phases to perform this mangling. A better fix would defer
this until the point when the methods are publicised, and leave
the unmangled private method in place and install an public,
mangled forwarder.
GenASM-based fix for SI-4804. Fix of the same for GenJVM pending.
SI-5167 An impl class method should refer to its own parameter symbols.

Rather than those of the original method in the trait.

If they are shared, parameter renaming in the implementaion class
is visible in the original method. This led to a crash in the resident
compiler when looking up the default argument getter.
Add configuration for ExecutionContext
Switching the the Akka-contributed Unsafe detection to support more platforms, like Android
Merge pull request #668 from viktorklang/master

Switching to the Akka-provided Unsafe detection
Merge branch 'master' of https://github.com/scala/scala
Merge pull request #667 from phaller/wip-sip14-ec-config

Add configuration for ExecutionContext
Fix SI-5879.

Fix a bug where a key in an immutable hash map
have the corresponding value different in the iteration
than when doing lookup. This use to happen after calling
`merge`.

Fix the order in which a key-value pair appears in
the collision resolution function - the first argument
always comes from the `this` hash map.

Deprecate `merge` in favour of `merged`, as this is
a pure method.
As an added benefit, the syntax for invoking `merge`
is now nicer.
Fix SI-5867.

Override clone for unrolled buffer.
Fixes SI-5857.

Override `min` and `max` in `Range` and `NumericRange`
to check if a default `Ordering` for the numeric type
in question is used.
If so, bypass traversal and compute the minimum or
maximum element.
Fix SI-5880.

Add a ChiSquare test for the new hash code.
Merge pull request #670 from axel22/issue/5879

Fix SI-5879.
Merge pull request #671 from axel22/issue/5867

Fix SI-5867.
Merge pull request #673 from axel22/issue/5880

Fix SI-5880.
Merge pull request #669 from dgruntz/master

Fixes typos in scaladoc of Orderes.scala
Updated tools/*cp scripts.

To include the asm classes in some cases, and also to improve
with my sadly now-greater knowledge of shell scripting.
Generate abstract methods in scala.Byte and friends.

Rather than stub implementations.  This saves over 50K of bytecode.
I also added the necessary imports to silence the feature warnings.
Merge pull request #674 from paulp/checkin-jun6

Updates to primitive classes and classpath scripts.
Add the first iteration of the `util.hashing` package.

Move `MurmurHash3` to `util.hashing`.
Make the `class` private and retain a public companion
`object`, and put the `MurmurHash3.Hashing` implementations
for various types in the companion.

Add a method which composes `ByteswapHashing` with some other hashing.

Rename `hashOf` to `hash`.

Fix chi-square test in a test-case.

Review by @jsuereth.

Moved a failing test that seems to use some other library version to pending.