!str #15121 MaterializerSettings now uses a config object

Resolves #15121
=tes #15777 simple, but stable fix to , or . sensitivity in spec

Solves #15777

Conflicts:
	akka-testkit/src/test/scala/akka/testkit/metrics/reporter/PrettyDurationSpec.scala
Merge pull request #15759 from ktoso/wip-reduce-weight-flow-materializer-ktoso

!str #15121 MaterializerSettings now uses a config object
Merge pull request #15789 from ktoso/port-prettydurationspec-ktoso

=tes #15777 simple, but stable fix to , or . sensitivity in spec (for Validation)
=str #15755 #15756 First stab at input/output factories

* New naming based on Source and Sink
correct variance annotations

- make HasNoX into pure marker traits
- make materialization type-safe
- remove casting when using EmptyPublisher
make materialize of IterableSource mandatory, source attach

* Source attach to top flow subscriber