!str #15121 MaterializerSettings now uses a config object

Resolves #15121
we have this multiple times now, perhaps this should be consolidated