diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,13 @@
 ghci:	ghci-tmp
 
 ghci-tmp:
-	ghci -Wall -i:src:execute/tmp src/Graphics/Gnuplot/Simple.hs
+	ghci -Wall -i:src:dist/build/autogen:execute/tmp src/Graphics/Gnuplot/Simple.hs
 
 ghci-pipe:
-	ghci -Wall -i:src:execute/pipe src/Graphics/Gnuplot/Simple.hs
+	ghci -Wall -i:src:dist/build/autogen:execute/pipe src/Graphics/Gnuplot/Simple.hs
 
 ghci-shell:
-	ghci -Wall -i:src:execute/shell src/Graphics/Gnuplot/Simple.hs
+	ghci -Wall -i:src:dist/build/autogen:execute/shell src/Graphics/Gnuplot/Simple.hs
 
 ghci-demo:
-	ghci -Wall -i:src:execute/tmp src/Demo.hs
-
+	ghci -Wall -i:src:dist/build/autogen:execute/tmp src/Demo.hs
diff --git a/gnuplot.cabal b/gnuplot.cabal
--- a/gnuplot.cabal
+++ b/gnuplot.cabal
@@ -1,5 +1,5 @@
 Name:             gnuplot
-Version:          0.4.0.1
+Version:          0.4.0.2
 License:          BSD3
 License-File:     LICENSE
 Author:           Henning Thielemann <haskell@henning-thielemann.de>
@@ -22,8 +22,13 @@
    I recommend "Graphics.Gnuplot.Advanced".
    This module contains also an overview
    of the hierarchy of objects.
+   .
    Examples for using this interface can be found in the "Demo" module.
+   In order to compile this and install an example data file,
+   use the Cabal flag @buildExamples@:
    .
+   > $ cabal install -fbuildExamples gnuplot
+   .
    With the Cabal flags executePipe and executeShell
    you can switch to more convenient
    but probably less portable ways
@@ -61,15 +66,15 @@
 Library
   Build-Depends:
     array >= 0.1 && <0.4,
-    containers >= 0.1 && <0.4,
+    containers >= 0.1 && <0.5,
     utility-ht >= 0.0.1 && < 0.1,
     monoid-transformer >= 0.0.2 && <0.1
   If flag(splitBase)
     Build-Depends:
-      base >= 2 && <6,
       process >= 1.0 && < 1.1,
       time >= 1.1 && < 1.2,
-      old-locale >= 1.0 && < 1.1
+      old-locale >= 1.0 && < 1.1,
+      base >= 2 && <5
   Else
     Build-Depends:
       base >= 1.0 && < 2
diff --git a/src/Demo.hs b/src/Demo.hs
--- a/src/Demo.hs
+++ b/src/Demo.hs
@@ -26,7 +26,7 @@
 import System.FilePath ((</>), )
 
 import Data.Array (listArray, )
-import Data.Monoid (mappend, )
+import Data.Monoid (mappend, mconcat, )
 
 
 simple2d :: Plot2D.T Double Double
@@ -58,6 +58,25 @@
    `mappend`
    circle2d
 
+names2d ::
+   Frame.T (Graph2D.T Double Double)
+names2d =
+   let domain = (-10,10)
+       frameOpts =
+          Opts.xRange2d domain $
+          Opts.yRange2d (-1.5,1.5) $
+          Opts.deflt
+   in Frame.cons frameOpts $ mconcat $
+      map (\(name,f) ->
+         fmap (Graph2D.lineSpec
+                  (LineSpec.title name $
+                   LineSpec.deflt)) $
+         Plot2D.function Graph2D.lines (linearScale 100 domain) f) $
+      ("sin", sin) :
+      ("cos", cos) :
+      ("tan", tan) :
+      []
+
 file2d :: FilePath -> FilePath -> Frame.T (Graph2D.T Int Double)
 file2d path file =
    let lineSpec =
@@ -138,15 +157,16 @@
 
 
 main :: IO ()
-main =
-   do Plot.plot X11.cons simple2d
-      Plot.plot X11.cons list2d
-      Plot.plot X11.cons candle2d
-      Plot.plot X11.cons overlay2d
-      Plot.plot X11.cons . flip file2d "runtime.data"
-         =<< fmap (</> "data") Path.getDataDir
-      Plot.plot X11.cons mixed2d
-      Plot.plot X11.cons size2d
-      Plot.plot X11.cons wave3d
-      Plot.plot X11.cons multiplot
-      return ()
+main = sequence_ $
+   Plot.plot X11.cons simple2d :
+   Plot.plot X11.cons list2d :
+   Plot.plot X11.cons candle2d :
+   Plot.plot X11.cons names2d :
+   Plot.plot X11.cons overlay2d :
+   (Plot.plot X11.cons . flip file2d "runtime.data"
+      =<< fmap (</> "data") Path.getDataDir) :
+   Plot.plot X11.cons mixed2d :
+   Plot.plot X11.cons size2d :
+   Plot.plot X11.cons wave3d :
+   Plot.plot X11.cons multiplot :
+   []
diff --git a/src/Graphics/Gnuplot/Graph/ThreeDimensional.hs b/src/Graphics/Gnuplot/Graph/ThreeDimensional.hs
--- a/src/Graphics/Gnuplot/Graph/ThreeDimensional.hs
+++ b/src/Graphics/Gnuplot/Graph/ThreeDimensional.hs
@@ -13,5 +13,3 @@
 
 import Graphics.Gnuplot.Private.Graph3D
 import Graphics.Gnuplot.Private.Graph3DType hiding (T, )
-
-import Prelude hiding (lines, )
diff --git a/src/Graphics/Gnuplot/Graph/TwoDimensional.hs b/src/Graphics/Gnuplot/Graph/TwoDimensional.hs
--- a/src/Graphics/Gnuplot/Graph/TwoDimensional.hs
+++ b/src/Graphics/Gnuplot/Graph/TwoDimensional.hs
@@ -26,7 +26,7 @@
    yErrorLinesAbsolute,
    xyErrorLinesAbsolute,
 
-   lines,
+   Graph2DType.lines,
    points,
    linesPoints,
    impulses,
@@ -48,6 +48,4 @@
    ) where
 
 import Graphics.Gnuplot.Private.Graph2D
-import Graphics.Gnuplot.Private.Graph2DType hiding (T, )
-
-import Prelude hiding (lines, )
+import Graphics.Gnuplot.Private.Graph2DType as Graph2DType hiding (T, )
diff --git a/src/Graphics/Gnuplot/Simple.hs b/src/Graphics/Gnuplot/Simple.hs
--- a/src/Graphics/Gnuplot/Simple.hs
+++ b/src/Graphics/Gnuplot/Simple.hs
@@ -337,7 +337,7 @@
    -> IO ()
 epspdfPlot filename plot =
    do plot (EPS (filename++".eps") : Key Nothing : [])
-      rawSystem "epstopdf" [filename++".eps"]
+      _ <- rawSystem "epstopdf" [filename++".eps"]
       return ()
 
 {-| Creates an EPS and a PDF graphics
