Common concepts for dealing with models and types.