diff --git a/Control/CP/FD/Example.hs b/Control/CP/FD/Example.hs
--- a/Control/CP/FD/Example.hs
+++ b/Control/CP/FD/Example.hs
@@ -21,7 +21,7 @@
 ) where
 
 
-import System (getArgs)
+import System.Environment (getArgs)
 import Data.Maybe (fromJust,isJust)
 import Data.Map (Map)
 import qualified Data.Map as Map
diff --git a/Control/CP/FD/FD.hs b/Control/CP/FD/FD.hs
--- a/Control/CP/FD/FD.hs
+++ b/Control/CP/FD/FD.hs
@@ -1,5 +1,6 @@
 {-# LANGUAGE GeneralizedNewtypeDeriving #-}
 {-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
 {-# LANGUAGE TypeSynonymInstances #-}
diff --git a/Control/CP/FD/OvertonFD/OvertonFD.hs b/Control/CP/FD/OvertonFD/OvertonFD.hs
--- a/Control/CP/FD/OvertonFD/OvertonFD.hs
+++ b/Control/CP/FD/OvertonFD/OvertonFD.hs
@@ -25,7 +25,7 @@
 ) where
 
 import Prelude hiding (lookup)
-import Maybe (fromJust,isJust)
+import Data.Maybe (fromJust,isJust)
 import Control.Monad.State.Lazy
 import Control.Monad.Trans
 import qualified Data.Map as Map
diff --git a/Control/Search/Combinator/And.hs b/Control/Search/Combinator/And.hs
--- a/Control/Search/Combinator/And.hs
+++ b/Control/Search/Combinator/And.hs
@@ -2,7 +2,7 @@
 
 module Control.Search.Combinator.And (andN,(<&>)) where
 
-import Maybe (fromMaybe, catMaybes, fromJust)
+import Data.Maybe (fromMaybe, catMaybes, fromJust)
 
 import Control.Search.Language
 import Control.Search.GeneratorInfo
diff --git a/Control/Search/Constraints.hs b/Control/Search/Constraints.hs
--- a/Control/Search/Constraints.hs
+++ b/Control/Search/Constraints.hs
@@ -13,7 +13,7 @@
   ) where
 
 import Text.PrettyPrint hiding (space)
-import List (sort, nub, sortBy)
+import Data.List (sort, nub, sortBy)
 import Unsafe.Coerce
 
 import Control.Search.Language
diff --git a/Control/Search/Generator.hs b/Control/Search/Generator.hs
--- a/Control/Search/Generator.hs
+++ b/Control/Search/Generator.hs
@@ -43,7 +43,7 @@
 import Debug.Trace
 
 import Text.PrettyPrint hiding (space)
-import List (sort, nub, sortBy)
+import Data.List (sort, nub, sortBy)
 import Data.List (intercalate)
 import Data.Unique
 import Unsafe.Coerce
diff --git a/Control/Search/Memo.hs b/Control/Search/Memo.hs
--- a/Control/Search/Memo.hs
+++ b/Control/Search/Memo.hs
@@ -10,7 +10,7 @@
 import Control.Monatron.IdT
 import Control.Monatron.MonadInfo
 
-import List (sort, nub, sortBy)
+import Data.List (sort, nub, sortBy)
 import Data.Maybe (fromJust)
 import Data.Map (Map)
 import qualified Data.Map as Map
diff --git a/README.txt b/README.txt
new file mode 100644
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,5 @@
+ACKNOWLEDGMENTS
+================
+
+- Thanks to Nicholas Tung for a patch to get
+  the package to compile against GHC 7.2.2.
diff --git a/monadiccp.cabal b/monadiccp.cabal
--- a/monadiccp.cabal
+++ b/monadiccp.cabal
@@ -1,5 +1,5 @@
 Name:			monadiccp
-Version:		0.7.2
+Version:		0.7.3
 Description:		Monadic Constraint Programming framework
 License:		BSD3
 License-file:		LICENSE
@@ -12,6 +12,7 @@
 Bug-reports:		http://trac.haskell.org/monadiccp/
 Cabal-Version:		>=1.6
 Extra-Source-Files: 	examples/*.hs lib/*.cpp lib/*.h
+Data-Files:		README.txt
 
 -- examples/Alpha.hs examples/Grocery.hs examples/MagicSquare.hs examples/Olympic.hs examples/Partition.hs examples/Queens.hs examples/Ring.hs examples/StressDomain.hs examples/TryDemo.hs examples/Zebra.hs
 
@@ -24,7 +25,7 @@
     Default:		False
 
 library
-    Build-Depends:	base >= 2, base < 5, containers, mtl, haskell98, random, pretty, parsec >= 3.0
+    Build-Depends:	base >= 2, base < 5, containers, mtl, random, pretty, parsec >= 3.0
     Exposed-Modules:	Data.Expr.Sugar
                         Control.CP.SearchTree
                         Control.CP.Transformers
