NettyTransport: bug fixes.

- Add a logic for retrying client-side handshake since it's possible
  for the client to lose the tie breaker and get disconnected before
  receiving the handshake from the server the broke the tie.
- Add a few asserts. These are temporary asserts for sanity check.
- Check the result of putIfAbsent() in the send method. Otherwise you
  might lose the first outgoing message.
NettyTransport: Add a test case for broadcasting.
Merge pull request #59 from m1ch1/master

netty transport bug fixes and improvements.
Merge pull request #57 from EasonLiao/refactory

Code refactory : change the logic to different processors and use short ...
Move sending HEARTBEAT code to PeerHandler; Use special request to quit processors.