see 03/Functors.hs
03/Functors.hs
Also implemented are Contravariant and Invariant instances.
Contravariant
Invariant