Rename Node -> Cluster
Create Node to represent main, extract http from Cluster to Node
Rename controller -> node
Pull udp away from Cluster to Node
Pull FailureDetector out from Cluster
Create common base trait for failure detection messages
Rename MemberMessage -> MemberStateMessage
Move broadcasting timer to Cluster
Move Broadcaster out of Cluster
Rewrite FailureDetector to use individual actors instead of collective state

Each ping is now represented by an actor that either receives an ack and terminates
or times out and starts another actor to do the indirect pinging.
Create CompoundUdpMessage to group multiple broadcasts into a single UDP package
Move Pingers to a separate file
Create utility methods for scheduling
Remove explicit need for unregistering in UdpComms

Unregistering is automatically done when a registered Actor stops
Change implicit ordering to compile better in IDEA
Use reasonable names for long lived actors
Don't directly return member list from cluster
Separate sending new members and getting response into two different messages
Better naming, extract method
Common trait for all cluster state messages