diff --git a/hoauth.cabal b/hoauth.cabal
--- a/hoauth.cabal
+++ b/hoauth.cabal
@@ -1,5 +1,5 @@
 name: hoauth
-version: 0.1.0
+version: 0.1.1
 category: Network,Protocol,OAuth
 license: BSD3
 license-file: LICENSE
diff --git a/src/main/haskell/Network/Protocol/OAuth/Consumer.hs b/src/main/haskell/Network/Protocol/OAuth/Consumer.hs
--- a/src/main/haskell/Network/Protocol/OAuth/Consumer.hs
+++ b/src/main/haskell/Network/Protocol/OAuth/Consumer.hs
@@ -63,9 +63,9 @@
 --
 -- The request you provide /must/ contain /oauth_nonce/ and /oauth_timestamp/ parameters properly defined.
 request :: (S.Signer s,Show s) => Consumer -> s -> R.Request -> R.Request
-request (Unauthenticated ckey csec)  s r = _oauth ckey csec Nothing s r
-request (Authenticated ckey csec tk) s r = let req = r >>+ ("oauth_token", (Just . oauth_token) tk) 
-                                           in _oauth ckey csec ((Just . oauth_token_secret) tk) s req
+request (Unauthenticated ckey _)  s r = _oauth ckey s r
+request (Authenticated ckey _ tk) s r = let req = r >>+ ("oauth_token", (Just . oauth_token) tk) 
+                                        in _oauth ckey s req
 
 -- | Process the response of the service provider. The response should be an urlencoded string.
 response :: Consumer -> B.ByteString -> Maybe Consumer
@@ -82,13 +82,13 @@
                      of (Unauthenticated ckey csec) -> Just $ Authenticated ckey csec (Token otken otkensec otkextra)
                         (Authenticated ckey csec _) -> Just $ Authenticated ckey csec (Token otken otkensec otkextra)
 
-_oauth :: (S.Signer s,Show s) => String -> String -> Maybe String -> s -> R.Request -> R.Request
-_oauth ckey csec tsec met req = req >>+ ("oauth_consumer_key",Just ckey)
-                                    >>+ ("oauth_version",Just "1.0")
-                                    >>+ ("oauth_signature_method",(Just . show) met)
-                                    >>| _sign csec tsec met
+_oauth :: (S.Signer s,Show s) => String -> s -> R.Request -> R.Request
+_oauth ckey met req = req >>+ ("oauth_consumer_key",Just ckey)
+                          >>+ ("oauth_version",Just "1.0")
+                          >>+ ("oauth_signature_method",(Just . show) met)
+                          >>| _sign met
 
-_sign :: (S.Signer s,Show s) => String -> Maybe String -> s -> R.Request -> R.Request
-_sign csec tsec met req = let sig = S.sign met req
-                          in req >>+ ("oauth_signature",Just sig)
+_sign :: (S.Signer s,Show s) => s -> R.Request -> R.Request
+_sign met req = let sig = S.sign met req
+                in req >>+ ("oauth_signature",Just sig)
 
diff --git a/src/main/haskell/Network/Protocol/OAuth/Request.hs b/src/main/haskell/Network/Protocol/OAuth/Request.hs
--- a/src/main/haskell/Network/Protocol/OAuth/Request.hs
+++ b/src/main/haskell/Network/Protocol/OAuth/Request.hs
@@ -24,7 +24,7 @@
 -- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 -- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-module Network.Protocol.OAuth.Request (Request(..),HTTPMethod(..),Parameter,PercentEncoding,encode,encodes,decode,decodes,append_param,apply,show_url,show_oauthurl,show_oauthheader,show_urlencoded,read_urlencoded,(>>+),(>>|)) where
+module Network.Protocol.OAuth.Request (Request(..),HTTPMethod(..),Parameter,PercentEncoding(encode,encodes,decode,decodes),append_param,apply,show_url,show_oauthurl,show_oauthheader,show_urlencoded,read_urlencoded,(>>+),(>>|)) where
 
 import Data.Bits as B
 import qualified Data.ByteString.Lazy as B1
diff --git a/src/main/haskell/Network/Protocol/OAuth/Signature.hs b/src/main/haskell/Network/Protocol/OAuth/Signature.hs
--- a/src/main/haskell/Network/Protocol/OAuth/Signature.hs
+++ b/src/main/haskell/Network/Protocol/OAuth/Signature.hs
@@ -25,7 +25,7 @@
 -- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 -- | Implements PLAINTEXT and HMAC-SHA1 signatures of oauth spec <http://oauth.net/core/1.0a#signing_process>
-module Network.Protocol.OAuth.Signature (Method(..),Signer,sign) where
+module Network.Protocol.OAuth.Signature (Method(..),Signer(sign)) where
 
 import qualified Network.Protocol.OAuth.Request as R
 import qualified Data.Digest.Pure.SHA  as S
@@ -37,26 +37,24 @@
 
 -- | The signature method which will be used to sign requests.
 data Method =   
-    {-| The 'PLAINTEXT' method does not provide any security protection and
-        SHOULD only be used over a secure channel such as /HTTPS/. It does
-        not use the Signature Base String.
+    {-| The 'PLAINTEXT' /consumer_key/ /token_secret/ method does not provide
+        any security protection and SHOULD only be used over a secure channel
+        such as /HTTPS/. It does not use the Signature Base String.
     -}
-    PLAINTEXT String         -- ^ The consumer secret
-              (Maybe String) -- ^ The token secret
-    {-| The 'HMAC_SHA1' signature method uses the /HMAC-SHA1/ signature
-        algorithm as defined in <http://tools.ietf.org/html/rfc2104> where
-        the Signature Base String is the text and the key is the
-        concatenated values (each first encoded per Parameter Encoding) of
-        the Consumer Secret and Token Secret, separated by an /&/ character
-        (ASCII code 38) even if empty.
+    PLAINTEXT String (Maybe String)
+    {-| The 'HMAC_SHA1' /consumer_key/ /token_secret/ signature method uses the
+        /HMAC-SHA1/ signature algorithm as defined in
+        <http://tools.ietf.org/html/rfc2104> where the Signature Base String is
+        the text and the key is the concatenated values (each first encoded per
+        Parameter Encoding) of the Consumer Secret and Token Secret, separated
+        by an /&/ character (ASCII code 38) even if empty.
     -}
-  | HMAC_SHA1 String         -- ^ The consumer secret
-              (Maybe String) -- ^ The token secret
-    {-| The RSA-SHA1 signature method uses the RSASSA-PKCS1-v1_5 signature
-        algorithm as defined in [RFC3447] section 8.2 (more simply known as
-        PKCS#1), using SHA-1 as the hash function for EMSA-PKCS1-v1_5. It is
-        assumed that the Consumer has provided its RSA public key in a verified
-        way to the Service Provider.
+  | HMAC_SHA1 String (Maybe String) 
+    {-| The 'RSA_SHA1' /rsa_privkey/ signature method uses the
+        RSASSA-PKCS1-v1_5 signature algorithm as defined in [RFC3447] section
+        8.2 (more simply known as PKCS#1), using SHA-1 as the hash function for
+        EMSA-PKCS1-v1_5. It is assumed that the Consumer has provided its RSA
+        public key in a verified way to the Service Provider.
     -}
   | RSA_SHA1 R1.PrivateKey
 
