Major improvements

1. add UDPCommunicator
2. remove heartbeat message enum
3. add HeartbeatTimerService, a fix rate timer service
4. move request handling logic to RaftServer
5. add setServer and communicate method in Communicator interface
6. add AbstractCommunicator
7. correctly set voteFor in RaftServer