We need to weed out the dependency from the root, and that requires us to redefine the types properly, matching how our renderer and builder use them.
This is an opportunity to clean up cruft as well, in particular with regard to (default) value type and multiple.
This is necessary for the future new admin frontend too.