New Remoting implementation (iteration 3) #2053

 - Asynchronous lockless remoting
 - Pluggable transport drivers
 - Multiple transport support
 - Simplified lifecycle events
 - Support for netty based TCP, SSL+TCP and UDP support
 - Updated Akka protocol with soft-state connections and failure detection
 - Refactored failure detectors (currently duplicated from cluster)
Removed Java7 API call
Merge branch 'master' into wip-2053d-actorbased-remote-drewhk
Ported threadpool limiting to the new NettyTransport
Added defaultAddress() to RemoteTransport API
Removed cross layer dependencies

 - akka protocol treats upper layer messages as raw bytes now
 - deserialization for received messages no longer use localAddressForRemote
Several fixes of the Remoting and Endpoint

 - correct registration of endpoints
 - passive endpoints now registered to detect parallel incoming connections
 - special care to avoid multiple existing endpoints for the same remote addresses (concurrent inbound or outbound communication leads to out-of-order delivery)
Fixed according to review comments.
Streamlined configuration, transport adapters and FailureInjector

 - Transports no longer uses raw ActorRefs as listeners but proper interfaces.
 - Added managementCommand support to Transports
 - Added support for dynamically loadable transport adapters
 - Added throttler/failure injector transport adapter
 - added actor based adapter support
 - Changed configuration method of multiple transports - Fixed tests to work with the new remoting
Change cluster MemberEvents to only be published on convergence. See #2692

Conflicts:
	akka-cluster/src/main/scala/akka/cluster/ClusterEvent.scala
	akka-cluster/src/main/scala/akka/cluster/ClusterJmx.scala
	akka-cluster/src/main/scala/akka/cluster/ClusterMetricsCollector.scala
	akka-cluster/src/main/scala/akka/cluster/ClusterReadView.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/MultiNodeClusterSpec.scala
	akka-docs/rst/cluster/cluster-usage-java.rst
	akka-docs/rst/cluster/cluster-usage-scala.rst
	akka-kernel/src/main/dist/bin/akka-cluster
allow cross-versioned akka-kernel deps for dist task to work, see #2807
more documentation fixes
Merge pull request #909 from akka/wip-2692-cluster-membership-events-ban

Change cluster MemberEvents to only be published on convergence. See #2692
Merge pull request #946 from akka/wip-2807-akka-kernel-detection-∂π

allow cross-versioned akka-kernel deps for dist task to work, see #2807
Remove check of heap max value, see #2793
 #2722 - Making AskableActorRef a value class (cannot be made an implicit value class and retain correct behavior)
 #2726 - removing a potential race between initializing the ReliableProxySpec
 #2810 - Adding a Java API for JavaSerializer.currentSystem + added tests
 #2721 - Adding implicit sender to Scheduler + tests
 #2812 - Fixing PatternSpec for gracefulStop by testing for juc.TimeoutException (common ancestor)