starting to demonstrate the redundancy of PFunctor and PContravariant.
They can be modeled with Functor and Contravariant using Nat now.