diff --git a/Control/Concurrent/Annealer.hs b/Control/Concurrent/Annealer.hs
--- a/Control/Concurrent/Annealer.hs
+++ b/Control/Concurrent/Annealer.hs
@@ -16,6 +16,7 @@
 import Control.Concurrent.Annealer.Population hiding (offerState)
 import qualified Control.Concurrent.Annealer.Population as Pop
 
+-- | An annealer.  Maintains a population of states and a perturbation function.
 data Annealer s e = PopAnn {
 	solPop :: {-# UNPACK #-} !(Population s e),
 	perturb :: s -> IO s}
@@ -24,18 +25,6 @@
 getBestState :: Ord e => Annealer s e -> IO s
 getBestState = getBest . solPop
 
--- | Initializes an annealer.
-initAnnealer :: Ord e => (s -> e) -- ^ The energy function for a state.
-			-> [s]	-- ^ A collection of initial states.
-			-> Int	-- ^ The size at which to maintain the population.
-			-> (s -> IO s) 
-				-- ^ The perturbation function.
-			-> IO (Annealer s e)
-				-- ^ The annealer.
-initAnnealer solScore sols popSize perturb = 
-	do	solPop <- initPop solScore sols popSize
-		return PopAnn{..}
-
 -- | A thread in which states in the annealer's current population are perturbed
 -- and offered back into the population.
 perturber :: Annealer s e -> IO ()
@@ -44,12 +33,23 @@
 	Pop.offerState sol' solPop
 	perturber pop
 
+-- | @'initAnnealer' initPop energyFunc popSize perturb@ initializes an annealer.
+initAnnealer :: Ord e => 
+	   [s] 			-- A seed collection of initial states.
+	-> (s -> e)		-- The energy function of a state.
+	-> Int			-- The size at which to maintain the population.
+	-> (s -> IO s) 		-- The perturbation function.
+	-> IO (Annealer s e) 	-- The annealer.
+initAnnealer sols solScore popSize perturb = 
+	do	solPop <- initPop solScore sols popSize
+		return PopAnn{..}
+
 -- | Offer a state to the annealer.  Depending on the current
 -- population, the state may or may not be kept.
 offerState :: s -> Annealer s e -> IO ()
 offerState s = Pop.offerState s . solPop
 
--- | Runs several annealing threads for the specified length of time.
+-- | @'annealForTime' nThreads microTime annealer@ runs @nThreads@ annealing threads for the specified length of time.
 annealForTime :: Ord e => 
 		Int	-- The number of annealing threads to run.
 		-> Int	-- The number of milliseconds until this program will try to stop.
diff --git a/concurrent-sa.cabal b/concurrent-sa.cabal
--- a/concurrent-sa.cabal
+++ b/concurrent-sa.cabal
@@ -1,6 +1,6 @@
 Name:		concurrent-sa
-Version:	1.0.0
-Category:	Algorithms
+Version:	1.0.1
+Category:	Algorithms, Concurrency
 Author:		Louis Wasserman
 License:	BSD3
 License-file:	LICENSE
