This module supplies a 'pure' monad transformer that can be used for
mock-testing code that throws exceptions, so long as those exceptions
are always thrown with throwM.
Do not mix CatchT with IO. Choose one or the other for
the bottom of your transformer stack!