Refactor raft recovery code to a RaftActorRecoverySupport class
Moved the RaftActor recovery message handling to a new class
RaftActorRecoverySupport. To handle the callbacks to the RaftActor,
the RaftActorRecoverySupport takes a RaftActorRecoveryCohort interface.
The abstract on* methods in RaftActor are now defined in the
RaftActorRecoveryCohort interface. The derived RaftActor class
implements an abstract method to return a RaftActorRecoveryCohort
instance. Shard returns a ShardRecoveryCoordinator instance (modified to
implement RaftActorRecoveryCohort).
Change-Id: I07a068aad277b6f677d7703c4e10686efe0cf0cc
Signed-off-by: Tom Pantelis <tpanteli@brocade.com>