diff --git a/Control/Concurrent/Forkable.hs b/Control/Concurrent/Forkable.hs
--- a/Control/Concurrent/Forkable.hs
+++ b/Control/Concurrent/Forkable.hs
@@ -81,10 +81,11 @@
 
 import qualified Control.Concurrent as C
 import Control.Concurrent hiding (forkIO)
-import Control.Monad.Reader
-import Control.Monad.State
+import Control.Monad.Trans.Class
+import Control.Monad.Trans.Reader
+import Control.Monad.Trans.State
 
-class (MonadIO m) => ForkableMonad m where
+class (Monad m) => ForkableMonad m where
     -- | Spark off a new thread to run the monadic computation passed
     -- as the first argument, and return the 'ThreadId' of the newly
     -- created thread.
diff --git a/forkable-monad.cabal b/forkable-monad.cabal
--- a/forkable-monad.cabal
+++ b/forkable-monad.cabal
@@ -4,7 +4,7 @@
 -- The package version. See the Haskell package versioning policy
 -- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for
 -- standards guiding when and how versions should be incremented.
-Version:             0.1
+Version:             0.1.1
 
 -- A short (one-line) description of the package.
 Synopsis:            An implementation of forkIO for monad stacks.
@@ -49,8 +49,8 @@
   Exposed-modules:   Control.Concurrent.Forkable
 
   -- Packages needed in order to build this package.
-  Build-depends:     base >3.0 && <4.3,
-                     mtl >=1.1 && <1.2
+  Build-depends:     base >3.0 && <4.4,
+                     transformers >=0.2.2
 
   -- Compiler options, for normal and profiling builds.
   Ghc-options:       -Wall
