Proper superclass constraints for Applicative & Monad.