Added support for variance to the type system.