diff --git a/Mueval/ParseArgs.hs b/Mueval/ParseArgs.hs
--- a/Mueval/ParseArgs.hs
+++ b/Mueval/ParseArgs.hs
@@ -4,7 +4,6 @@
 import System.Console.GetOpt
 import System.Environment (getArgs)
 
-import qualified System.IO.UTF8 as UTF (putStr)
 import qualified Codec.Binary.UTF8.String as Codec (decodeString)
 
 import Mueval.Context (defaultModules)
diff --git a/build.sh b/build.sh
--- a/build.sh
+++ b/build.sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # Build
-runhaskell Setup configure --user && runhaskell Setup build && runhaskell Setup install || exit
-echo "\n...Single-threaded tests....\n"
-sh tests.sh
-echo "\n...Rerun the tests with multiple threads...\n"
-sh tests.sh +RTS -N4 -RTS --print-type
+(runhaskell Setup configure --user && runhaskell Setup build && runhaskell Setup install || exit) &&
+echo "\n...Single-threaded tests....\n" &&
+sh tests.sh &&
+echo "\n...Rerun the tests with multiple threads...\n" &&
+sh tests.sh +RTS -N4 -RTS
diff --git a/mueval.cabal b/mueval.cabal
--- a/mueval.cabal
+++ b/mueval.cabal
@@ -1,5 +1,5 @@
 name:                mueval
-version:             0.5
+version:             0.5.1
 
 license:             BSD3
 license-file:        LICENSE
@@ -31,7 +31,7 @@
 library
         exposed-modules:     Mueval.Concurrent, Mueval.Context, Mueval.Interpreter,
                              Mueval.ParseArgs, Mueval.Resources
-        build-depends:       base, directory, mtl, unix, hint>=0.2.4, show>=0.2, utf8-string
+        build-depends:       base, directory, mtl, unix, hint>=0.2.4, show>=0.3, utf8-string
         ghc-options:         -Wall -static
 
 executable mueval
diff --git a/tests.sh b/tests.sh
--- a/tests.sh
+++ b/tests.sh
@@ -9,8 +9,9 @@
 # Test on valid expressions. Note we conditionalize - all of these should return successfully.
 echo "Test some valid expressions \n"
 ## Does anything work?
-m '1*100+1'
+m 'False'
 ## OK, let's try some simple math.
+m '1*100+1'
 m '(1*100) +1+1' --module Control.Monad
 ## String processing
 m "filter (\`notElem\` ['A'..'Z']) \"abcXsdzWEE\""
@@ -29,6 +30,12 @@
 ## Let's see whether the ShowQ instances for QuickCheck work
 m 'myquickcheck (1+1 == 2)' -E
 m 'myquickcheck (\x -> x == x)' -E
+m 'myquickcheck (\x -> (x :: String) == x)' -E
+## Test SmallCheck using examples from #haskell
+m 'mysmallcheck True' -E
+m 'mysmallcheck (\x -> x < (10000::Int))' -E
+m 'mysmallcheck (\x -> not x || x)' -E
+## Test Unicode. If this fails, characters got mangled somewhere.
 m 'let (ñ) = (+) in ñ 5 5'
 echo "\nOK, all the valid expressions worked out well." &&
 
