Move the instances of Functor and Monad IO to GHC.Base, to avoid orphans