diff --git a/Help/stat.help.hs b/Help/stat.help.hs
--- a/Help/stat.help.hs
+++ b/Help/stat.help.hs
@@ -1,5 +1,4 @@
 -- Trivial sound file statistics.
-
 import qualified Sound.File.HSndFile as F
 import System.Environment
 
@@ -9,11 +8,11 @@
   let nf = F.frameCount hdr
       sr = F.sampleRate hdr
       nc = F.channelCount hdr
-  mapM_ print [("nframes", [fromIntegral nf])
-              ,("srate", [sr])
-              ,("nchan", [fromIntegral nc])
-              ,("minimum", map minimum d)
-              ,("maximum", map maximum d)]
+  print (("nframes",nf)
+        ,("srate",sr)
+        ,("nchan",nc)
+        ,("minima",map minimum d)
+        ,("maxima",map maximum d))
 
 main :: IO ()
 main = do
@@ -23,5 +22,5 @@
     _ -> putStrLn "stat file-name"
 
 {-
-stat "/home/rohan/audio/text.snd"
+stat "/home/rohan/data/audio/pf-c5.aif"
 -}
diff --git a/README b/README
--- a/README
+++ b/README
@@ -1,13 +1,14 @@
-hsc3-sf-hsndfile - hsc3-sf interface to hsndfile
+hsc3-sf-hsndfile
+----------------
 
-hsc3-sf-sndfile provides a trivial hsc3-sf equivalent
-interface to the hsndfile package.  hsndfile has more
-extensive dependencies than hsc3-sf, and this allows
-the two packages to be used interchangably by modifying
-a single import.
+[haskell][hs] soundfile ([hsc3-sf][hsc3-sf]) interface to
+[hsndfile][hsf]
 
-  http://slavepianos.org/rd
-  http://code.haskell.org/hsndfile
+[hs]: http://haskell.org/
+[hsc3-sf]: http://rd.slavepianos.org/?t=hsc3-sf
+[hsf]: http://code.haskell.org/hsndfile
 
-(c) rohan drape, 2010
-    gpl, http://gnu.org/copyleft/
+© [rohan drape][rd], 2010-2012, [gpl]
+
+[rd]: http://rd.slavepianos.org/
+[gpl]: http://gnu.org/copyleft/
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,3 @@
+#!/usr/bin/env runhaskell
+import Distribution.Simple
+main = defaultMain
diff --git a/Setup.lhs b/Setup.lhs
deleted file mode 100644
--- a/Setup.lhs
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/usr/bin/env runhaskell
-> import Distribution.Simple
-> main = defaultMain
diff --git a/Sound/File/HSndFile.hs b/Sound/File/HSndFile.hs
--- a/Sound/File/HSndFile.hs
+++ b/Sound/File/HSndFile.hs
@@ -9,12 +9,13 @@
 import qualified Sound.File.Sndfile as F
 import qualified Sound.File.Sndfile.Buffer.Vector as F
 
-data Header = Header { channelCount :: Int 
+-- | Sound file meta data.
+data Header = Header { channelCount :: Int
                      , frameCount :: Int
                      , sampleRate :: Double }
               deriving (Eq, Show)
 
--- | file-name -> (channel-count, frame-count, sample-rate)
+-- | Read 'Header' of sound file.
 header :: FilePath -> IO Header
 header fn = do
   h <- F.openFile fn F.ReadMode F.defaultInfo
@@ -25,6 +26,7 @@
   F.hClose h
   return (Header nc (fromIntegral nf) (fromIntegral sr))
 
+-- | Read 'Header' and audio channel data from sound file.
 read :: FilePath -> IO (Header, [[Double]])
 read fn = do
   hd <- header fn
diff --git a/hsc3-sf-hsndfile.cabal b/hsc3-sf-hsndfile.cabal
--- a/hsc3-sf-hsndfile.cabal
+++ b/hsc3-sf-hsndfile.cabal
@@ -1,18 +1,21 @@
 Name:              hsc3-sf-hsndfile
-Version:           0.8
+Version:           0.12
 Synopsis:          Haskell SuperCollider SoundFile
-Description:       Provide hsc3-sf interface to Stefan 
-                   Kersten's hsndfile package.
+Description:       hsc3-sf-sndfile provides a trivial hsc3-sf equivalent
+                   interface to Stefan Kersten's hsndfile package.  hsndfile
+                   has more extensive dependencies than hsc3-sf, and this
+                   allows the two packages to be used interchangably by
+                   modifying a single import.
 License:           GPL
 Category:          Sound
-Copyright:         (c) Rohan Drape, 2010
+Copyright:         (c) Rohan Drape, 2012
 Author:            Rohan Drape
 Maintainer:        rd@slavepianos.org
 Stability:         Experimental
-Homepage:          http://slavepianos.org/rd/?t=hsc3-sf-hsndfile
-Tested-With:       GHC == 6.10.3
+Homepage:          http://rd.slavepianos.org/?t=hsc3-sf-hsndfile
+Tested-With:       GHC == 7.6.1
 Build-Type:        Simple
-Cabal-Version:     >= 1.6
+Cabal-Version:     >= 1.8
 
 Data-files:        README
                    Help/stat.help.hs
@@ -20,13 +23,13 @@
 Library
   Build-Depends:   array,
                    base == 4.*,
-                   hsc3-sf == 0.8,
-                   hsndfile == 0.4.*,
-                   hsndfile-vector == 0.4.*,
+                   hsc3-sf == 0.12.*,
+                   hsndfile == 0.5.*,
+                   hsndfile-vector == 0.5.*,
                    vector >= 0.5
   GHC-Options:     -Wall -fwarn-tabs
   Exposed-modules: Sound.File.HSndFile
 
 Source-Repository  head
   Type:            darcs
-  Location:        http://slavepianos.org/~rd/sw/hsc3-sf-hsndfile/
+  Location:        http://rd.slavepianos.org/sw/hsc3-sf-hsndfile/
