Match now have owner and type lookup. Removed unnecessary methods from IncludedGenericModule.
Moved lookup_generic_type to GenericType module.
Instantiate IncludedGenericModule in clone instead of in each call