diff --git a/fsnotify.cabal b/fsnotify.cabal
--- a/fsnotify.cabal
+++ b/fsnotify.cabal
@@ -1,11 +1,10 @@
 Name:                   fsnotify
-Version:                0.0.8
+Version:                0.0.9
 Author:                 Mark Dittmer <mark.s.dittmer@gmail.com>
 Maintainer:             Mark Dittmer <mark.s.dittmer@gmail.com>, Greg Weber <greg@gregweber.info>
 License:                BSD3
 License-File:           LICENSE
-Synopsis:               Cross platform library for file creation, modification,
-                        and deletion notification.
+Synopsis:               Cross platform library for file change notification.
 Description:            Cross platform library for file creation, modification,
                         and deletion notification. This library builds upon
                         existing libraries for platform-specific Window, Mac,
@@ -22,7 +21,6 @@
 Library
   Build-Depends:          base >= 4.3.1.0 && < 5
                         , containers >= 0.4.2.1
-                        , directory >= 1.1.0.2
                         , system-fileio >= 0.3.8 && < 0.4
                         , system-filepath >= 0.4.6 && <= 0.5
                         , text >= 0.11.0
@@ -74,7 +72,6 @@
                         , bytestring >= 0.9.2.1
                         , Cabal >= 1.14.0
                         , containers >= 0.4.2.1
-                        , directory >= 1.1.0.2
                         , Glob >= 0.7.1
                         , hspec >= 1.3.0
                         , random >= 1.0.1.1
diff --git a/test/Util.hs b/test/Util.hs
--- a/test/Util.hs
+++ b/test/Util.hs
@@ -14,7 +14,7 @@
 import Control.Monad (when)
 import Data.Unique.Id
 import Filesystem.Path.CurrentOS hiding (concat)
-import System.Directory
+import Filesystem (createTree, removeTree)
 import System.IO.Error (isPermissionError)
 import System.FSNotify
 import System.FSNotify.Path
@@ -94,21 +94,19 @@
 withNestedTempDir firstPath fn = do
   secondPath <- testName
   let path = if firstPath /= empty then
-               fp $ firstPath </> secondPath
+               firstPath </> secondPath
              else
-               fp secondPath
-  bracket (createDirectory path >> threadDelay dirPreAction >> return path) (attemptDirectoryRemoval . fp) (fn . fp)
+               secondPath
+  bracket (createTree path >> threadDelay dirPreAction >> return path) attemptDirectoryRemoval fn
 
 attemptDirectoryRemoval :: FilePath -> IO ()
 attemptDirectoryRemoval path = do
   threadDelay dirPostAction
   catch
-    (removeDirectoryRecursive pathString)
+    (removeTree path)
     (\e -> when
            (not $ isPermissionError e)
            (throw e))
-  where
-    pathString = fp path
 
 performAction :: TestAction -> FilePath -> IO ()
 performAction action path = action path
