Cluster node roles, see #3049

- [x] Config of node roles cluster.role
- [x] Cluster router configurable with use-role
- [x] RoleLeaderChanged event
- [x] ClusterSingleton per role
- [x] Cluster only starts once all required per-role node counts are reached
- [x] Update documentation and make use of the roles in the examples