diff --git a/Setup.hs b/Setup.hs
new file mode 100644
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
diff --git a/Setup.lhs b/Setup.lhs
deleted file mode 100644
--- a/Setup.lhs
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/env runhaskell
-
-> import Distribution.Simple
-> main = defaultMain
-
diff --git a/rvar.cabal b/rvar.cabal
--- a/rvar.cabal
+++ b/rvar.cabal
@@ -1,5 +1,5 @@
 name:                   rvar
-version:                0.2.0.3
+version:                0.2.0.4
 stability:              stable
 
 cabal-version:          >= 1.6
@@ -12,27 +12,26 @@
 
 category:               Math
 synopsis:               Random Variables
-description:            Random number generation based on modeling random 
+description:            Random number generation based on modeling random
                         variables by an abstract type ('RVar') which can be
                         composed and manipulated monadically and sampled in
                         either monadic or \"pure\" styles.
                         .
-                        The primary purpose of this library is to support 
+                        The primary purpose of this library is to support
                         defining and sampling a wide variety of high quality
                         random variables.  Quality is prioritized over speed,
                         but performance is an important goal too.
                         .
-                        In my testing, I have found it capable of speed 
+                        In my testing, I have found it capable of speed
                         comparable to other Haskell libraries, but still
-                        a fair bit slower than straight C implementations of 
+                        a fair bit slower than straight C implementations of
                         the same algorithms.
                         .
                         Changes in 0.2.0.1:  Version bump for transformers
                         dependency.
 
 tested-with:            GHC == 6.8.3, GHC == 6.10.4, GHC == 6.12.3,
-                        GHC == 7.0.4, GHC == 7.2.1, GHC == 7.2.2, 
-                        GHC == 7.4.1-rc1
+                        GHC == 7.0.4, GHC == 7.2.1, GHC == 7.2.2
 
 source-repository head
   type:                 git
@@ -52,7 +51,7 @@
     cpp-options:        -DMTL2
   else
     build-depends:      mtl == 1.1.*
-  
+
   build-depends:        base            >= 3 && <5,
                         MonadPrompt     == 1.0.*,
                         random-source   == 0.3.*,
diff --git a/src/Data/RVar.hs b/src/Data/RVar.hs
--- a/src/Data/RVar.hs
+++ b/src/Data/RVar.hs
@@ -39,12 +39,10 @@
 import Data.Random.Source ({-instances-})
 
 import qualified Control.Monad.Trans.Class as T
-import Control.Applicative
 import Control.Monad (liftM, ap)
 import Control.Monad.Prompt (MonadPrompt(..), PromptT, runPromptT)
 import qualified Control.Monad.IO.Class as T
 import qualified Control.Monad.Trans as MTL
-import qualified Control.Monad.Identity as MTL
 import qualified Data.Functor.Identity as T
 
 -- |An opaque type modeling a \"random variable\" - a value 
@@ -197,7 +195,6 @@
 
 instance Monad (RVarT n) where
     return x = RVarT (return $! x)
-    fail s   = RVarT (fail s)
     (RVarT m) >>= k = RVarT (m >>= \x -> x `seq` unRVarT (k x))
 
 instance MonadRandom (RVarT n) where
