BUG-190 Simplify reconnect logic in protocol-framework.

- Removed duplicate code from ReconnectPromise (almost the same code in ProtocolSessionPromise)
- ReconnectPromise now only calls ProtocolSessionPromise.connect (once right away to connect initially,
then every time channel is closed by dropped session)
- Removed second ReconnectingStrategyFactory from ReconnectPromise and AbstractDispatcher.createReconnectingClient
(Kept in AbstractDispatcher for backwards compatibility as deprecated). Only one factory needed for reconnecting client
- Added unit tests to ServerTest to test different cases of reconnecting
- Slightly refactored ProtocolSessionPromise to make code more readable

Change-Id: If3af8f468e7d59822c984cf814d15460ab35921f
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Merge "BUG-190 Simplify reconnect logic in protocol-framework."