Submodels: accommodate multiple 'type' keys for the same submodel. Closes #429