Merge pull request #211 from dcousens/tests

Various tests and recoverPubKey change
tests: formatting
Transaction: remove TxIn/TxOut exports
Transaction: use TxIn/TxOut consistently
Transaction: move all constants to top
Transaction: remove hash:index notation
Transaction: remove TxIn/TxOut from API
Transaction: support non-addressable output scripts
Transaction: renames getHash to getId

In turn also removes the inherent calculation of tx.hash after deserialization.
Wallet: avoid transaction inspection when signing
Transaction: use hash Buffer instead of hex string
Transaction: remove address from txOut
Transaction: restrict Transaction constructor
Transaction: fix test name
Transaction: move test to proper section
Transaction: test hex formatting
Transaction: rename script -> prevOutScript
Transaction: rename type to hashType
tests: avoid b2h where toHex exists
Transaction: tests should show unboxing of parameters