diff --git a/iteratee.cabal b/iteratee.cabal
--- a/iteratee.cabal
+++ b/iteratee.cabal
@@ -1,5 +1,5 @@
 name:          iteratee
-version:       0.8.4.2
+version:       0.8.4.3
 synopsis:      Iteratee-based I/O
 description:
   The Iteratee monad provides strict, safe, and functional I/O. In addition
@@ -15,7 +15,7 @@
 tested-with:   GHC == 7.4.2, GHC == 7.6.0
 stability:     experimental
 
-cabal-version: >= 1.6
+cabal-version: >= 1.16
 build-type:    Simple
 
 extra-source-files:
@@ -26,23 +26,13 @@
   Examples/*.txt
   tests/*.hs
 
-flag splitBase
-  description: Use the split-up base package.
-
-flag buildTests
-  description: Build test executables.
-  default:     False
-
 library
+  default-language: Haskell2010
   hs-source-dirs:
     src
 
-  if flag(splitBase)
-    build-depends:
+  build-depends:
       base >= 3 && < 6
-  else
-    build-depends:
-      base < 3
 
   if os(windows)
     cpp-options: -DUSE_WINDOWS
@@ -57,7 +47,7 @@
       unix >= 2 && < 3
 
   build-depends:
-    ListLike                  >= 1.0     && < 4,
+    ListLike                  >= 1.0     && < 5,
     MonadCatchIO-transformers >  0.2     && < 0.4,
     bytestring                >= 0.9     && < 0.11,
     containers                >= 0.2     && < 0.6,
@@ -87,31 +77,36 @@
   if impl(ghc >= 6.8)
     ghc-options: -fwarn-tabs
 
-executable testIteratee
+Test-Suite testIteratee
+  default-language: Haskell2010
+  type: exitcode-stdio-1.0
+  main-is: testIteratee.hs
   hs-source-dirs:
     src
     tests
 
-  main-is: testIteratee.hs
-
   other-modules:
     QCUtils
 
-  if flag(buildTests)
-    build-depends:
-      mtl                        >= 2   && < 3,
-      QuickCheck                 >= 2   && < 3,
-      test-framework             >= 0.3 && < 0.4,
-      test-framework-quickcheck2 >= 0.2 && < 0.3
-  else
-    buildable:  False
-
-  if flag(splitBase)
-    build-depends:
-      base >= 3 && < 5
+  if os(windows)
+    cpp-options: -DUSE_WINDOWS
   else
+    cpp-options: -DUSE_POSIX
     build-depends:
-      base < 3
+      unix                    >= 2 && < 3
+
+  build-depends:
+      base,
+      bytestring,
+      iteratee,
+      ListLike,
+      MonadCatchIO-transformers,
+      parallel,
+      transformers,
+      mtl                        >= 2   && < 4,
+      QuickCheck                 >= 2   && < 3,
+      test-framework             >= 0.3 && < 0.9,
+      test-framework-quickcheck2 >= 0.2 && < 0.5
 
 source-repository head
   type:     darcs
diff --git a/src/Data/Iteratee/Base.hs b/src/Data/Iteratee/Base.hs
--- a/src/Data/Iteratee/Base.hs
+++ b/src/Data/Iteratee/Base.hs
@@ -42,8 +42,6 @@
 
 import Control.Monad.IO.Class
 import Control.Monad.Trans.Class
-import Control.Monad.CatchIO (MonadCatchIO (..), Exception (..),
-  block, toException, fromException)
 import Control.Monad.CatchIO as CIO
 import Control.Applicative hiding (empty)
 import Control.Exception (SomeException)
