diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@
 
 # The `hpp` Library
 
-The `hpp` executable is a command-line interface to the `hpp` library. While the `hpp` package has been designed to have minimal dependencies beyond what the `GHC` compiler itself uses, it does include a few small, framework-free unit tests that demonstrate basic usage as a library. In the `testIf` example, we preprocess the `sourceIfDef` input with a starting definition equivalent to `#define FOO 1`. In `testArith1`, we exercise basic integer arithmetic and comparison. The `hppHelper` function shows how to run your source input through the preprocessor: `runHpp initialState (preproces mySource)`.
+The `hpp` executable is a command-line interface to the `hpp` library. While the `hpp` package has been designed to have minimal dependencies beyond what the `GHC` compiler itself uses, it does include a few small, framework-free unit tests that demonstrate basic usage as a library. In the `testIf` example, we preprocess the `sourceIfdef` input with a starting definition equivalent to `#define FOO 1`. In `testArith1`, we exercise basic integer arithmetic and comparison. The `hppHelper` function shows how to run your source input through the preprocessor: `runHpp initialState (preproces mySource)`.
 
 ```haskell
 {-# LANGUAGE LambdaCase, OverloadedStrings #-}
diff --git a/hpp.cabal b/hpp.cabal
--- a/hpp.cabal
+++ b/hpp.cabal
@@ -1,5 +1,5 @@
 name:                hpp
-version:             0.5.0
+version:             0.5.0.1
 synopsis:            A Haskell pre-processor
 description:         See the README for usage examples
 license:             BSD3
diff --git a/src/Hpp.hs b/src/Hpp.hs
--- a/src/Hpp.hs
+++ b/src/Hpp.hs
@@ -1,8 +1,14 @@
 {-# LANGUAGE GeneralizedNewtypeDeriving, TupleSections #-}
 -- | Front-end interface to the pre-processor.
-module Hpp (parseDefinition, preprocess,
-            T.HppState, emptyHppState, initHppState, addDefinition,
-            runHpp, streamHpp, HppT, HppOutput(..)) where
+module Hpp ( -- * Running the Preprocessor
+            preprocess, runHpp, streamHpp,
+            -- * Preprocessor State
+            T.HppState, emptyHppState, initHppState,
+            -- * Adding Definitions
+            parseDefinition, addDefinition,
+            -- * Core Types
+             HppT, HppOutput(..)
+            ) where
 import Control.Monad.IO.Class (MonadIO, liftIO)
 import Control.Monad.Trans.Class (lift, MonadTrans)
 import Control.Monad.Trans.Except (ExceptT, throwE)
