* When a def starts with if and is not a oneliner the if
should be on a new line.
* The reason is that it might be easy to miss the if when
reading the code.
* Subscribe to InstantMemberEvent and start heartbeating when
InstantMemberUp. Same for metrics.
* HeartbeatNodeRing data structure for bidirectional mapping of
heartbeat sender and receiver. Not using ConsistentHash anymore.
Node addresses are hashed to ensure that neighbors are spread out.
* HeartbeatRequest when receiver detects that it has not received
expected heartbeats.
* New test InitialHeartbeatSpec that simulates the problem
* Add/remove some related conf properties
* Add some more logging to be able to diagnose eventual problems
* Explicit config of nr-of-end-heartbeats
- Promise was completed twice erroneously
- Purged the trait Status from Transport, using failed futures instead
- using intercept instead of try ... catch in tests
- added termination hook for UntrustedSpec to shut down second system
- Fixed threading issues in ThrottlerTransportAdapter
- Removed nulls from exception constructors
- replaced Promise.successful(...).future with Future.successful
- 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
- 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)