diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,4 +1,6 @@
 # Tainted
+[![travis](https://travis-ci.org/RossMeikleham/Tainted.svg?branch=master)](https://travis-ci.org/RossMeikleham/Tainted) [![hackage](https://img.shields.io/badge/Hackage-v0.1.0.1-orange.svg)](http://hackage.haskell.org/package/Tainted)
+
 Tainted type, and associated operations 
 
 A Tainted type contains either a clean or dirty value. Values which are
diff --git a/Tainted.cabal b/Tainted.cabal
--- a/Tainted.cabal
+++ b/Tainted.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                Tainted
-version:             0.1.0
+version:             0.1.0.1
 synopsis:            Tainted type, and associated operations
 description:            Tainted type, and associated operations
 homepage:            https://github.com/RossMeikleham/Tainted
diff --git a/src/Control/Monad/Trans/Tainted.hs b/src/Control/Monad/Trans/Tainted.hs
--- a/src/Control/Monad/Trans/Tainted.hs
+++ b/src/Control/Monad/Trans/Tainted.hs
@@ -17,16 +17,17 @@
 
 import Control.Monad
 import Control.Monad.Trans
+import Control.Applicative
 import Data.Tainted
 
 -- | 'TaintedT' is a monad transformed of 'Tainted'
 newtype TaintedT m a = TaintedT {runTainted :: m (Tainted a)}
 
 
-instance Monad m => Functor (TaintedT m) where
+instance (Monad m, Functor m) => Functor (TaintedT m) where
     fmap f = TaintedT . fmap (fmap f) . runTainted
 
-instance Monad m => Applicative (TaintedT m) where
+instance (Monad m, Functor m) => Applicative (TaintedT m) where
     pure = return
     (<*>) = ap
 
diff --git a/src/Data/Tainted.hs b/src/Data/Tainted.hs
--- a/src/Data/Tainted.hs
+++ b/src/Data/Tainted.hs
@@ -1,3 +1,5 @@
+
+{-# LANGUAGE DeriveDataTypeable #-}
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Control.Monad
@@ -13,10 +15,10 @@
 
 module Data.Tainted 
     (Tainted(..), isClean, isDirty, cleans, dirtys, partitionTaints)
-
 where
 
 import Control.Monad
+import Control.Applicative
 import Data.Typeable
 
 
