diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright Dino Morelli 2010-2013
+Copyright Dino Morelli 2010-2015
 
 All rights reserved.
 
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -65,7 +65,7 @@
 ### Using this library
 
    Please see the [Haddock documentation](http://hackage.haskell.org/package/epub-metadata-4.0/docs/Codec-Epub.html) or source code for
-   [Codec.Epub](http://ui3.info/darcs/epub-metadata/src/Codec/Epub.hs)
+   [Codec.Epub](http://hub.darcs.net/dino/epub-metadata/browse/src/Codec/Epub.hs)
 
    This file has a working example of using this library.
 
@@ -73,17 +73,17 @@
 ## Getting source
 
 - Download the cabalized source package [from Hackage](http://hackage.haskell.org/package/epub-metadata)
-- Download the cabalized source tarball [from here](http://ui3.info/d/proj/epub-metadata/epub-metadata-4.2.tar.gz)
-- Get the source with darcs: `$ darcs get http://ui3.info/darcs/epub-metadata`
-- If you're just looking, [browse the source](http://ui3.info/darcs/epub-metadata)
+- Get the source with cabal-install: `$ cabal get epub-metadata`
+- Get the source with darcs: `$ darcs get http://hub.darcs.net/dino/epub-metadata`
+- If you're just looking, [browse the source](http://hub.darcs.net/dino/epub-metadata)
 
 And once you have it, building the usual way:
 
->     $ cabal configure --enable-tests
->     $ cabal build
->     $ cabal test
->     $ cabal haddock
->     $ cabal install
+    $ cabal configure --enable-tests
+    $ cabal build
+    $ cabal test
+    $ cabal haddock
+    $ cabal install
 
 
 ## Installing
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -1,6 +1,5 @@
 #! /usr/bin/env runhaskell
 
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/TODO b/TODO
deleted file mode 100644
--- a/TODO
+++ /dev/null
@@ -1,9 +0,0 @@
-- May need to add a special function that will try to locate modified even in the metaDate field (which is what an epub2 might look like)
-
-- Need more API docs. Detail the differences between epub2 and epub3 in the data structures, where the fields come from and which are only one or the other.
-
-- Separate some of the Metadata sub-types into their own modules, starting with Title. We've got some utility functions now for this, will help to clean it up some more.
-
-- Better errors on parse failure, this will emerge along with more unit testing
-
-- More unit testing
diff --git a/TODO.md b/TODO.md
new file mode 100644
--- /dev/null
+++ b/TODO.md
@@ -0,0 +1,10 @@
+- May need to add a special function that will try to locate modified
+  even in the metaDate field (which is what an epub2 might look like)
+- Need more API docs. Detail the differences between epub2 and
+  epub3 in the data structures, where the fields come from and which
+  are only one or the other.
+- Separate some of the Metadata sub-types into their own modules,
+  starting with Title. We've got some utility functions now for this,
+  will help to clean it up some more.
+- Better errors on parse failure, this will emerge along with more unit testing
+- More unit testing
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,13 @@
+4.3 (2015-05-25)
+
+   * Replaced deprecated Control.Monad.Error with
+     Control.Monad.Except
+   * Updated cabal homepage, tested-with and source-repository
+   * Cleaned out ui3.info stuff from the README
+   * Updated boringfile with cabal sandbox filespecs
+   * TODO is now a Markdown document
+
+
 4.2 (2014-05-09)
 
    * Added many files missing from extra-source-files
diff --git a/doc/examples/README b/doc/examples/README
--- a/doc/examples/README
+++ b/doc/examples/README
@@ -1,3 +1,3 @@
-This is a small project for maintaining the example code that goes into the aHaddock docs for Codec.Epub
+This is a small project for maintaining the example code that goes into the Haddock docs for Codec.Epub
 
 To build it, you'll need to install epub-metadata as it's called for by this example code's cabal file.
diff --git a/doc/hcar/epubmetadata-De.tex b/doc/hcar/epubmetadata-De.tex
--- a/doc/hcar/epubmetadata-De.tex
+++ b/doc/hcar/epubmetadata-De.tex
@@ -1,15 +1,18 @@
 % epubmetadata-De.tex
 \begin{hcarentry}{epub-metadata}
-\report{Dino Morelli}%05/11
+\label{epub-metadata}
+\report{Dino Morelli}%11/13
 \status{experimental, actively developed}
 \makeheader
 
 Library for parsing and manipulating epub OPF package data. Now with epub3 support.
 
-* Added support for epub3 documents. This was done using a single set of datatypes, not specific to either epub2 or epub3.
-* Redesigned the book file querying API to be an edsl. Actions are to be combined together based on what the developer needs from the document.
-* Data structures to contain epub metadata "sections" were redesigned to no longer be nested. Part of this change includes a typeclass-based pretty-print API for displaying this data.
-* Documentation rewrites and additions, including a working code example in the API docs.
+\begin{itemize}
+\item Added support for epub3 documents. This was done using a single set of datatypes, not specific to either epub2 or epub3.
+\item Redesigned the book file querying API to be an edsl. Actions are to be combined together based on what the developer needs from the document.
+\item Data structures to contain epub metadata ``sections'' were redesigned to no longer be nested. Part of this change includes a typeclass-based pretty-print API for displaying this data.
+\item Documentation rewrites and additions, including a working code example in the API docs.
+\end{itemize}
 
 epub-metadata is available from Hackage and the Darcs repository below.
 
diff --git a/epub-metadata.cabal b/epub-metadata.cabal
--- a/epub-metadata.cabal
+++ b/epub-metadata.cabal
@@ -1,20 +1,20 @@
 name:                epub-metadata
-version:             4.2
+version:             4.3
 cabal-version:       >= 1.8
 build-type:          Simple
 license:             BSD3
 license-file:        LICENSE
-copyright:           2010-2013 Dino Morelli
+copyright:           2010-2015 Dino Morelli
 author:              Dino Morelli
 maintainer:          Dino Morelli <dino@ui3.info>
 stability:           experimental
-homepage:            http://ui3.info/d/proj/epub-metadata.html
+homepage:            http://hub.darcs.net/dino/epub-metadata
 synopsis:            Library for parsing epub document metadata
 description:         Library for parsing and manipulating epub document metadata. Supports epub versions 2 and 3.
 
                      This library was constructed by studying the IDPF specifications for epub documents found here <http://www.idpf.org/epub/20/spec/OPF_2.0.1_draft.htm> and here <http://www.idpf.org/epub/30/spec/epub30-publications.html>
 category:            Codec, Text
-tested-with:         GHC >= 7.6.2
+tested-with:         GHC >= 7.10.1
 extra-source-files:  changelog.md
                      doc/dev/notes
                      doc/examples/README
@@ -30,14 +30,14 @@
                      testsuite/bookfiles/content/bar
                      testsuite/Epub2/*.hs
                      testsuite/Epub3/*.hs
-                     TODO
+                     TODO.md
                      util/gentags.sh
                      util/prefs/boring
                      util/show-opf.hs
 
 source-repository    head
    type:             darcs
-   location:         http://ui3.info/darcs/epub-metadata/
+   location:         http://hub.darcs.net/dino/epub-metadata
 
 library
    exposed-modules:  Codec.Epub
diff --git a/src/Codec/Epub.hs b/src/Codec/Epub.hs
--- a/src/Codec/Epub.hs
+++ b/src/Codec/Epub.hs
@@ -1,4 +1,3 @@
--- Copyright: 2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Common.hs b/src/Codec/Epub/Data/Common.hs
--- a/src/Codec/Epub/Data/Common.hs
+++ b/src/Codec/Epub/Data/Common.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Guide.hs b/src/Codec/Epub/Data/Guide.hs
--- a/src/Codec/Epub/Data/Guide.hs
+++ b/src/Codec/Epub/Data/Guide.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Manifest.hs b/src/Codec/Epub/Data/Manifest.hs
--- a/src/Codec/Epub/Data/Manifest.hs
+++ b/src/Codec/Epub/Data/Manifest.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Metadata.hs b/src/Codec/Epub/Data/Metadata.hs
--- a/src/Codec/Epub/Data/Metadata.hs
+++ b/src/Codec/Epub/Data/Metadata.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Package.hs b/src/Codec/Epub/Data/Package.hs
--- a/src/Codec/Epub/Data/Package.hs
+++ b/src/Codec/Epub/Data/Package.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Data/Spine.hs b/src/Codec/Epub/Data/Spine.hs
--- a/src/Codec/Epub/Data/Spine.hs
+++ b/src/Codec/Epub/Data/Spine.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format.hs b/src/Codec/Epub/Format.hs
--- a/src/Codec/Epub/Format.hs
+++ b/src/Codec/Epub/Format.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Guide.hs b/src/Codec/Epub/Format/Guide.hs
--- a/src/Codec/Epub/Format/Guide.hs
+++ b/src/Codec/Epub/Format/Guide.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Manifest.hs b/src/Codec/Epub/Format/Manifest.hs
--- a/src/Codec/Epub/Format/Manifest.hs
+++ b/src/Codec/Epub/Format/Manifest.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Metadata.hs b/src/Codec/Epub/Format/Metadata.hs
--- a/src/Codec/Epub/Format/Metadata.hs
+++ b/src/Codec/Epub/Format/Metadata.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Package.hs b/src/Codec/Epub/Format/Package.hs
--- a/src/Codec/Epub/Format/Package.hs
+++ b/src/Codec/Epub/Format/Package.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Spine.hs b/src/Codec/Epub/Format/Spine.hs
--- a/src/Codec/Epub/Format/Spine.hs
+++ b/src/Codec/Epub/Format/Spine.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Format/Util.hs b/src/Codec/Epub/Format/Util.hs
--- a/src/Codec/Epub/Format/Util.hs
+++ b/src/Codec/Epub/Format/Util.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/IO.hs b/src/Codec/Epub/IO.hs
--- a/src/Codec/Epub/IO.hs
+++ b/src/Codec/Epub/IO.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -20,7 +19,7 @@
 import Codec.Archive.Zip
 import Control.Arrow.ListArrows ( (>>>), deep )
 import Control.Exception
-import Control.Monad.Error
+import Control.Monad.Except
 import qualified Data.ByteString.Char8 as BS
 import Data.ByteString.Lazy ( fromChunks )
 import qualified Data.ByteString.Lazy as B
diff --git a/src/Codec/Epub/Parse.hs b/src/Codec/Epub/Parse.hs
--- a/src/Codec/Epub/Parse.hs
+++ b/src/Codec/Epub/Parse.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -21,7 +20,7 @@
    where
 
 import Control.Arrow.ListArrows
-import Control.Monad.Error
+import Control.Monad.Except
 import Text.XML.HXT.Arrow.Namespace ( propagateNamespaces )
 import Text.XML.HXT.Arrow.XmlState ( no, runX, withValidate )
 import Text.XML.HXT.Arrow.XmlState.TypeDefs
diff --git a/src/Codec/Epub/Parse/Guide.hs b/src/Codec/Epub/Parse/Guide.hs
--- a/src/Codec/Epub/Parse/Guide.hs
+++ b/src/Codec/Epub/Parse/Guide.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Manifest.hs b/src/Codec/Epub/Parse/Manifest.hs
--- a/src/Codec/Epub/Parse/Manifest.hs
+++ b/src/Codec/Epub/Parse/Manifest.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Metadata.hs b/src/Codec/Epub/Parse/Metadata.hs
--- a/src/Codec/Epub/Parse/Metadata.hs
+++ b/src/Codec/Epub/Parse/Metadata.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Package.hs b/src/Codec/Epub/Parse/Package.hs
--- a/src/Codec/Epub/Parse/Package.hs
+++ b/src/Codec/Epub/Parse/Package.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Refinements.hs b/src/Codec/Epub/Parse/Refinements.hs
--- a/src/Codec/Epub/Parse/Refinements.hs
+++ b/src/Codec/Epub/Parse/Refinements.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Spine.hs b/src/Codec/Epub/Parse/Spine.hs
--- a/src/Codec/Epub/Parse/Spine.hs
+++ b/src/Codec/Epub/Parse/Spine.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Parse/Util.hs b/src/Codec/Epub/Parse/Util.hs
--- a/src/Codec/Epub/Parse/Util.hs
+++ b/src/Codec/Epub/Parse/Util.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/src/Codec/Epub/Util.hs b/src/Codec/Epub/Util.hs
--- a/src/Codec/Epub/Util.hs
+++ b/src/Codec/Epub/Util.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/testsuite/Archive.hs b/testsuite/Archive.hs
--- a/testsuite/Archive.hs
+++ b/testsuite/Archive.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -7,7 +6,7 @@
    where
 
 import Codec.Archive.Zip
-import Control.Monad.Error
+import Control.Monad.Except
 import System.Directory
 import System.FilePath
 import Test.HUnit
@@ -44,7 +43,7 @@
 -}
 testDamagedZip :: Test
 testDamagedZip = TestLabel "damaged zip" $ TestCase $ do
-   actual <- runErrorT $ getPkgXmlFromZip $ "testsuite"
+   actual <- runExceptT $ getPkgXmlFromZip $ "testsuite"
       </> "damagedZipCentralDir.epub"
    actual @?= Left "Data.Binary.Get.runGet at position 138: Did not find end of central directory signature"
 
@@ -58,7 +57,7 @@
 testIllegalCharsBeforeDecl = TestCase $ do
    xmlString <- readFile $
       "testsuite" </> "testIllegalCharsBeforeDecl.opf"
-   actual <- runErrorT $ getPackage xmlString
+   actual <- runExceptT $ getPackage xmlString
    let expected =
          Right Package {pkgVersion = "2.0", pkgUniqueId = "uuid_id"}
    assertEqual "illegal chars before XML declaration" expected actual
diff --git a/testsuite/Epub2/ParseGuide.hs b/testsuite/Epub2/ParseGuide.hs
--- a/testsuite/Epub2/ParseGuide.hs
+++ b/testsuite/Epub2/ParseGuide.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -26,7 +25,7 @@
 testFull :: Test
 testFull = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-full.opf"
-   actual <- runErrorT $ getGuide xmlString
+   actual <- runExceptT $ getGuide xmlString
    let expected =
          Right [ GuideRef
                   { grType = "title-page"
@@ -47,6 +46,6 @@
 testMinimal :: Test
 testMinimal = TestCase $ do
    xmlString <- liftIO $ readFile $ "testsuite" </> "epub2-minimal.opf"
-   actual <- runErrorT $ getGuide xmlString
+   actual <- runExceptT $ getGuide xmlString
    let expected = Right []
    assertEqual "minimal guide" expected actual
diff --git a/testsuite/Epub2/ParseMetadata.hs b/testsuite/Epub2/ParseMetadata.hs
--- a/testsuite/Epub2/ParseMetadata.hs
+++ b/testsuite/Epub2/ParseMetadata.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -28,7 +27,7 @@
 testFull :: Test
 testFull = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-full.opf"
-   actual <- runErrorT $ getMetadata xmlString
+   actual <- runExceptT $ getMetadata xmlString
    let expected =
          Right Metadata
             { metaTitles =
@@ -113,7 +112,7 @@
 testMinimal :: Test
 testMinimal = TestCase $ do
    xmlString <- liftIO $ readFile $ "testsuite" </> "epub2-minimal.opf"
-   actual <- runErrorT $ getMetadata xmlString
+   actual <- runExceptT $ getMetadata xmlString
    let expected = 
          Right Metadata 
             { metaTitles = [Title Nothing Nothing Nothing
@@ -144,6 +143,6 @@
 testMissingAll :: Test
 testMissingAll = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-missingAll.opf"
-   actual <- runErrorT $ getMetadata xmlString
+   actual <- runExceptT $ getMetadata xmlString
    let expected = Right emptyMetadata
    assertEqual "missing all" expected actual
diff --git a/testsuite/Epub3/ParseMetadata.hs b/testsuite/Epub3/ParseMetadata.hs
--- a/testsuite/Epub3/ParseMetadata.hs
+++ b/testsuite/Epub3/ParseMetadata.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -26,7 +25,7 @@
 testFull :: Test
 testFull = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub3-full.opf"
-   actual <- runErrorT $ getMetadata xmlString
+   actual <- runExceptT $ getMetadata xmlString
    let expected =
          Right Metadata
             { metaIds =
diff --git a/testsuite/ParseManifest.hs b/testsuite/ParseManifest.hs
--- a/testsuite/ParseManifest.hs
+++ b/testsuite/ParseManifest.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -26,7 +25,7 @@
 testSeveral :: Test
 testSeveral = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-full.opf"
-   actual <- runErrorT $ getManifest xmlString
+   actual <- runExceptT $ getManifest xmlString
    let expected =
          Right $ Manifest [ ManifestItem 
                   { mfiId = "ncx"
@@ -52,7 +51,7 @@
 testMissing :: Test
 testMissing = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-missingAll.opf"
-   actual <- runErrorT $ getManifest xmlString
+   actual <- runExceptT $ getManifest xmlString
    let expected =
          Right $ Manifest []
    assertEqual "missing entirely" expected actual
diff --git a/testsuite/ParsePackage.hs b/testsuite/ParsePackage.hs
--- a/testsuite/ParsePackage.hs
+++ b/testsuite/ParsePackage.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -25,7 +24,7 @@
 testEpub2 :: Test
 testEpub2 = TestCase $ do
    xmlString <- liftIO $ readFile $ "testsuite" </> "epub2-minimal.opf"
-   actual <- runErrorT $ getPackage xmlString
+   actual <- runExceptT $ getPackage xmlString
    let expected = 
          Right Package 
             { pkgVersion = "2.0"
diff --git a/testsuite/ParseSpine.hs b/testsuite/ParseSpine.hs
--- a/testsuite/ParseSpine.hs
+++ b/testsuite/ParseSpine.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
@@ -6,7 +5,7 @@
    ( tests )
    where
 
-import Control.Monad.Error
+import Control.Monad.Except
 import System.FilePath
 import Test.HUnit
 
@@ -27,7 +26,7 @@
 testFull :: Test
 testFull = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-full.opf"
-   actual <- runErrorT $ getSpine xmlString
+   actual <- runExceptT $ getSpine xmlString
    let expected =
          Right Spine
             { spineToc = "ncx"
@@ -44,7 +43,7 @@
 testMinimal :: Test
 testMinimal = TestCase $ do
    xmlString <- liftIO $ readFile $ "testsuite" </> "epub2-minimal.opf"
-   actual <- runErrorT $ getSpine xmlString
+   actual <- runExceptT $ getSpine xmlString
    let expected = Right Spine {spineToc = "ncx", spineItemrefs = []}
    assertEqual "minimal" expected actual
 
@@ -54,6 +53,6 @@
 testMissingAll :: Test
 testMissingAll = TestCase $ do
    xmlString <- readFile $ "testsuite" </> "epub2-missingAll.opf"
-   actual <- runErrorT $ getSpine xmlString
+   actual <- runExceptT $ getSpine xmlString
    let expected = Right Spine {spineToc = "", spineItemrefs = []}
    assertEqual "missing all" expected actual
diff --git a/testsuite/test-main.hs b/testsuite/test-main.hs
--- a/testsuite/test-main.hs
+++ b/testsuite/test-main.hs
@@ -1,4 +1,3 @@
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
diff --git a/util/prefs/boring b/util/prefs/boring
--- a/util/prefs/boring
+++ b/util/prefs/boring
@@ -1,4 +1,11 @@
-# Boring file regexps:
+# This file contains a list of extended regular expressions, one per
+# line. A file path matching any of these expressions will be filtered
+# out during `darcs add', or when the `--look-for-adds' flag is passed
+# to `darcs whatsnew' and `record'.  The entries in ~/.darcs/boring (if
+# it exists) supplement those in this file.
+# 
+# Blank lines, and lines beginning with an octothorpe (#) are ignored.
+# See regex(7) for a description of extended regular expressions.
 
 ### compiler and interpreter intermediate files
 # haskell (ghc) interfaces
@@ -38,8 +45,11 @@
 # cabal intermediates
 \.installed-pkg-config
 \.setup-config
+# cabal sandbox
+^\.cabal-sandbox(/|$)
+cabal\.sandbox\.config
 # standard cabal build dir, might not be boring for everybody
-# ^dist(/|$)
+^dist(/|$)
 # autotools
 (^|/)autom4te\.cache($|/)
 (^|/)config\.(log|status)$
@@ -111,7 +121,3 @@
 (^|/)\.lock-wscript$
 # mac os finder
 (^|/)\.DS_Store$
-# cabal
-(^|/)dist($|/)
-
-(^|/)bin($|/)
diff --git a/util/show-opf.hs b/util/show-opf.hs
--- a/util/show-opf.hs
+++ b/util/show-opf.hs
@@ -1,6 +1,5 @@
 #! /usr/bin/runhaskell -isrc
 
--- Copyright: 2010-2013 Dino Morelli
 -- License: BSD3 (see LICENSE)
 -- Author: Dino Morelli <dino@ui3.info>
 
