Make nn.Module compatible with multiple inheritance with Generic[T].
In some cases of multiple inheritance with Generic types, the class is
reinstantiated with default annotations and we shouldn't error there.
We also fix here a general hygiene mistake in our __init_subclass__ of
not calling the super() __init_subclass__ (which for instance breaks
Generic's metaclass machinery).