ClusterSharding: Expanded cluster roles support

A fix for ClusterSharding: Expanded cluster roles support #16123

Allow a `roleOverride: Option[String]` to be used when starting `ClusterSharding` for a given entry type. This will allow role defined clusters of `ClusterSharding` for specific entry types instead of requiring the role configuration to be more or less all or nothing across all entry types.

Preserved a couple of the original `ClusterSharding.start` signatures.
it's not needed to keep the old signatures, compared to 2.3.x we have already added one parameter `rememberEntries` and decided to not be source compatible. For 2.4 we will move this from akka-contrib anyway.