Implement commiting of data

- Implement ThreePhaseCommitCohort Actor
- Implement a BasicIntegrationTest to test out using a Shard upto committing
- Make modifications in Shard, ShardTransaction, ShardTransactionChain to make the flow work

Change-Id: I4dd9a8947e456da0a37193d9daf56fcc3783c0cd
Signed-off-by: Moiz Raja <moraja@cisco.com>