diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,37 +1,2 @@
-#!/usr/bin/env runhaskell
-
 import Distribution.Simple
-import Distribution.Simple.LocalBuildInfo
-import Distribution.PackageDescription
-import System.Cmd
-import System.FilePath
-import System.Directory
-import System.IO.Error
-
-
-main = defaultMainWithHooks hooks
-  where hooks = simpleUserHooks { runTests = runTests'}
-
-
-hpcReportDir = "hpcreport"
-
-runTests' :: Args -> Bool -> PackageDescription -> LocalBuildInfo -> IO ()
-runTests' _ _ _ lbi = do
-  res <- try (removeFile tixFile)
-  case res of
-    Left err
-        | not (isDoesNotExistError err) -> putStrLn "tix file could not be removed"
-    _ -> return ()
-  putStrLn "running tests ..."
-  system testprog
-  putStrLn "computing code coverage ..."
-  hpcReport
-  putStrLn "generating code coverage reports ..."
-  hpcMarkup
-  return ()
-    where testprog = (buildDir lbi) </> "test" </> "test"
-          tixFile = "test.tix"
-          hpcReport = system $ "hpc report test"++exclArgs
-          hpcMarkup = system $ "hpc markup test --destdir="++hpcReportDir++exclArgs
-          excludedModules = []
-          exclArgs = concatMap (" --exclude="++) excludedModules
+main = defaultMain
diff --git a/equivalence.cabal b/equivalence.cabal
--- a/equivalence.cabal
+++ b/equivalence.cabal
@@ -1,9 +1,11 @@
 Name:            equivalence
-Version:         0.2.2
+Version:         0.2.3
 License:         BSD3
 License-File:    LICENSE
-Author:          Patrick Bahr <paba@diku.dk>
-Maintainer:      Patrick Bahr <paba@diku.dk>
+Author:          Patrick Bahr
+Maintainer:      paba@diku.dk
+Homepage:        https://bitbucket.org/paba/equivalence/
+bug-reports:     https://bitbucket.org/paba/equivalence/issues/new
 Synopsis:        Maintaining an equivalence relation implemented as union-find using STT.
 Description:	 
   This is an implementation of Tarjan's Union-Find algorithm (Robert
@@ -15,14 +17,22 @@
   ST monad transformer (instead of the IO monad).
 Category:        Algorithms, Data
 Stability:       provisional
-Build-Type:      Custom
-Cabal-Version:   >= 1.6
+Build-Type:      Simple
+Cabal-Version:   >=1.9.2
 
 
-flag test
-  description: Build test executable.
-  default:     False
+source-repository head
+  type:     hg
+  location: https://bitbucket.org/paba/equivalence/
 
+
+Test-Suite test
+  Type:                 exitcode-stdio-1.0
+  Main-is:		Data_Test.hs
+  hs-source-dirs:	src testsuite/tests
+  Build-Depends:        base >= 4, template-haskell, containers, mtl, QuickCheck >= 2,
+                        test-framework, test-framework-quickcheck2, STMonadTrans
+
 Library
   Build-Depends:
     base >= 4 && < 5, containers, mtl, STMonadTrans
@@ -30,11 +40,3 @@
     Data.Equivalence.STT,
     Data.Equivalence.Monad
   Hs-Source-Dirs: src
-
-Executable test
-  Main-is:		Data_Test.hs
-  Build-Depends:	base >= 4, template-haskell, containers, mtl, QuickCheck >= 2, test-framework, test-framework-quickcheck2
-  hs-source-dirs:	src testsuite/tests
-  ghc-options:          -fhpc
-  if !flag(test)
-    buildable:     False
diff --git a/testsuite/tests/Data_Test.hs b/testsuite/tests/Data_Test.hs
deleted file mode 100644
--- a/testsuite/tests/Data_Test.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module Main where
-
-import Test.Framework
-import qualified Data.Equivalence.Monad_Test
-
---------------------------------------------------------------------------------
--- Test Suits
---------------------------------------------------------------------------------
-
-main = defaultMain [tests]
-
-tests = testGroup "Data" [
-         Data.Equivalence.Monad_Test.tests
-       ]
-
---------------------------------------------------------------------------------
--- Properties
---------------------------------------------------------------------------------
