!con #15496 Make entries of shards persistent

- Move all entry related logic out of the ShardRegion and into a
  new dedicated child `Shard` actor.
- Shard actor persists entry started and passivated messages.
- Non passivated entries get restarted on termination.
- Shard Coordinator restarts shards on other regions upon region failure or handoff
- Ensures shard rebalance restarts shards.

Refs #15496 
I had awful headaches with the multi-jvm testing environment, to the point that without the sleeps, I was getting race conditions between the tests and the clustering actors. (The type of races which only failed a tenth of the time).

I'll try to remove some, to see if the later code fixed the problems.