diff --git a/database-migrate.cabal b/database-migrate.cabal
--- a/database-migrate.cabal
+++ b/database-migrate.cabal
@@ -1,5 +1,5 @@
 Name:               database-migrate
-Version:            0.0.2
+Version:            0.0.3
 License:            BSD3
 License-File:       LICENSE
 Author:             Mark Hibberd <mark@hibberd.id.au>
@@ -35,7 +35,7 @@
                     , filepath                      >= 1.0        && < 2.0
                     , bytestring                    >= 0.9        && < 0.10
                     , time                          >= 1.0        && < 2.0
-                    , postgresql-simple             >= 0.1        && < 1.0
+                    , postgresql-simple             == 0.1.4.3
                     , containers                    >= 0.4        && < 0.5
                     , either                        >= 3.0.2      && < 4.0
                     , transformers                  >= 0.2        && < 0.4
@@ -56,16 +56,3 @@
   Extensions:
                     MultiParamTypeClasses
                     OverloadedStrings
-
-
-Executable          migrate
-  Main-Is:          main.hs
-  Hs-Source-Dirs:   src
-  Ghc-Options:      -Wall -O2
-  Build-Depends:
-                    base                            >= 3          && < 5
-                    , database-migrate
-                    , cmdargs                       >= 0.9.3      && < 1.0.0
-                    , directory                     >= 1.0        && < 2.0
-                    , postgresql-simple             >= 0.1        && < 1.0
-                    , text                          >= 0.11       && < 0.12
diff --git a/src/Database/Migrate/Main.hs b/src/Database/Migrate/Main.hs
--- a/src/Database/Migrate/Main.hs
+++ b/src/Database/Migrate/Main.hs
@@ -1,6 +1,7 @@
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
 module Database.Migrate.Main (defaultMain) where
 
-import qualified Paths_database_migrate as Program (version)
+--import qualified Paths_database_migrate as Program (version)
 
 import qualified Data.Text as T
 import Data.Version (showVersion)
@@ -57,7 +58,7 @@
 
 run args
   | printhelp args      = mapM_ putStrLn usage
-  | printversion args   = putStrLn $ "migrate " ++ showVersion Program.version
+  | printversion args   = putStrLn $ "migrate " ++ "showVersion Program.version"
   | otherwise           = migrate args
 
 bomb msg =
diff --git a/src/main.hs b/src/main.hs
deleted file mode 100644
--- a/src/main.hs
+++ /dev/null
@@ -1,77 +0,0 @@
-{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
-import qualified Paths_database_migrate as Program (version)
-
-import qualified Data.Text as T
-import Data.Version (showVersion)
-
-import Database.PostgreSQL.Simple
-
-import System.Console.CmdArgs.Explicit
-import System.Directory
-import System.Exit
-
-usage = [
-    "usage: migrate [-v|--verbose] [-d|--dry-run] [-t|--test-run] [-a|--auto] [-s|--scripts DIR]"
-  , "               [-h|--host HOSTNAME] [-p|--port PORTNUMBER] [-u|--user USER] [-P|--password PASSWORD]"
-  , "               "
-  , "               [-g|--postgres] [-m|--mysql] [VERSION]"
-  , "       migrate -h|--help"
-  , "       migrate -V|--version"
-  ]
-
-data Arguments = Arguments {
-    printhelp :: Bool
-  , printversion :: Bool
-  , dry :: Bool
-  , test :: Bool
-  , auto :: Bool
-  , postgres :: Maybe String
-  , mysql :: Maybe String
-  , version :: Maybe String
-  , scripts :: String
-  } deriving (Eq, Show)
-
-defaultArguments cwd = Arguments {
-    printhelp = False
-  , printversion = False
-  , dry = False
-  , test = False
-  , auto = False
-  , postgres = Nothing
-  , mysql = Nothing
-  , version = Nothing
-  , scripts = cwd
-  }
-
-migratemode cwd =
-  mode "migrate" (defaultArguments cwd) "" (flagArg (\v a -> Right $ a { version = Just v }) "VERSION") [
-      flagNone [ "h", "help" ]     (\a -> a { printhelp = True })    "print help and exit"
-    , flagNone [ "V", "version" ]  (\a -> a { printversion = True }) "print version and exit"
-    , flagNone [ "d", "dry-run" ]  (\a -> a { dry = True })          "do not perform any updates"
-    ]
-
-main =
-  getCurrentDirectory >>= \cwd -> processArgs (migratemode cwd) >>= run
-
-run args
-  | printhelp args      = mapM_ putStrLn usage
-  | printversion args   = putStrLn $ "migrate " ++ showVersion Program.version
-  | otherwise           = migrate args
-
-bomb msg =
-  putStrLn msg >> exitFailure
-
-migrate args =
-  case (postgres args, mysql args) of
-    (Nothing, Nothing) -> bomb "Must specify at exactly one of -p or -m for database selection, specified none."
-    (Just _, Just _) -> bomb "Must specify at exactly one of -p or -m for database selection, specified two."
-    (Just p, _) -> runpostgres args p
-    (_, Just m) -> runmysql args m
-
-runmysql _ _ =
-  bomb "Not implemented yet."
-
-runpostgres args connstr =
-  undefined
-
-
