Cleanup to IDataStore interface, and a fix to AddPeerAction to set the version to something that will sync.
 * extra test in DynamicMembershipTest to verify the plumbing for membership adds.
 * IDataStoreWriter's metadata() gives us a place to set the version, so we don't need two write() calls in the interface. For now.
Updates to Synchronizer exchange loop, other fixes.
 * extra merkle_point from diff call means we need to explicitly remove it from the response side, to avoid an infinite loop.
 * Membership::syncToDataStore() now loads the datastore with the right totalCopies value.
 * fixed an issue in the WanPacketHandler/PeerConnection scheduling algorithm.