Tracker #29939: Improve setting definition DSL and move setting registry to memory
Create a new setting definition DSL
We should drop setting STI and introduce a new way of defining settings.
For plugins and for core alike.
I'd imagine it similar to permissions, just simplier hopefully.
Fixes #32286 - new settings definition DSL
Introduces a new DSL to define settings, so we don't need to define
STI classes for every setting category and we have more control over
settings from the plugins.
Refs #32286 - setting DSL switch preparation
Removes some unused methods and tests.
This also add collections to the old collection registry to work before we hold them in registry only.