Signature decoding tests

Added tests of Signature decoding to illustrate a problem decoding
a signature that exists in the block chain.  The signature has strange
DER lengths.
Bug fix:  Incorrectly reporting the DER length in
the error message
Removed code assertions on DER size when parsing signatures.

This is required to sucessfully verify block 124276, transaction index 3
( fb0a1d8d34fa5537e461ac384bac761125e1bfa7fec286fa72511240fa66864d )
input 0.
Merge pull request #35 from OttoAllmendinger/sha1

Add methods hashSha1 and hashSha1BS
Merge pull request #34 from lornap/sigDecodeFix

Fixing Signature Decoding Problem
Fix readme indentation in code blocks
Merge pull request #40 from darthdeus/patch-1

Fix readme indentation in code blocks
Removing signature placeholders in partially signed transaction inputs
Merge pull request #41 from plaprade/remove-sig-token

Removing signature placeholders in partially signed transaction inputs
Removing the BuildMonad and returning a status flag from transaction signing functions
Merge pull request #42 from plaprade/remove-buildmonad

Removing BuildMonad
Non-standard inputs must be considered complete
Merge pull request #43 from plaprade/master

Non-standard inputs must be considered complete
base58 changes
Reads and Shows
decode/encodeBase58I modified
full readed
Removing SigNeedPrevOut status and returning SigComplete if no SigInput is provided by the user
Merge pull request #45 from plaprade/remove-status

Removing SigNeedPrevOut status
Adding base58 unit tests