!str #15121 MaterializerSettings now uses a config object

* it's now easier to create a FlowMaterializer(), which will use the default (see akka-streams/.../reference.conf) configuration
* kept methods to easily overload some values of the settings (used to be done via copy())
* made some apply() duplication trade-offs in FlowMaterializer companion for nicer API
* made it possible to set namePrefix from Java API

Resolves #15121
Updated the PR according to the idea of settings being clean of any ActorSystem interaction.
We obtain the settings at the "latest possible" moment here, where we have the actor system's config.