Hmm, the read CH after the rebalance is also not the same as the read CH before the rebalance - in fact the read CH and the write CH are the same both before and after the rebalance...

I think it would be better if we got back to the consistentHashAtStart/consistentHashAtEnd terminology, but with consistentHashAtEnd really being the next CH, not the write CH like it was before. We could also keep the unionConsistentHash method with the write CH that's used during the rebalance.