Allow marker types to have unsized parameters

Tweak CovariantType, ContravariantType, and InvariantType to allow their
type parameter to be unsized.