Discard MGenericType, for it's too hard to design & implement, and it
will make the system excessively complex. Add MRole, according to the
association in UML.
Add MRole.
Add MTypeManager(default visibility).