Added Functor, Applicative, and Monad Provider instances