Refactor StructForm for mixins rather than nesting

Usefulness remains to be seen.