WIP on #15086 cancelling publishers/subscribers if they are never consumed

By cancelling Subscribers and Publishers, not actors directly etc. In theory anyone could reuse the registry - I have not made it akka private, only the internals of it.

Only in the GroupBy case currently. For it it works because when all substreams are cancelled the entire actor stops itself.

I avoided even thinking about any WeakReference magics, I believe we agreed to avoid them right?

Anyhow, still WIP as needs to be applied to other places which might need it, but comments on impl method already very welcome, thanks!

Eventually resolves #15086
can't we use defaults (defined in config), unless there is a special need for something else

    final FlowMaterializer materializer = FlowMaterializer.create(system);