add getRecentTimeoutInMills to TimerService

1. move term++ logic to start leader election logic
2. add TODO to ActorBasedCommunicator
3. add timeout debug info in startLeaderElection