Transaction/Script: bitcoin network no longer implied

A Transaction has no idea, nor is it capable of: retrieving the
Base58 of a PubKeyHash or ScriptHash.
This is because both of these Address types use network specific
constants for the generation of their Base58 representation.

To make Transaction uncoupled from the network, the removal of
TransactionOut.address will be necessary.  Unfortunately, this is
a heavily used field around the project (exhibiting one of the main
reasons why this library is not fully compatible with testnet).

For now, Transaction.deserialize will now never attempt at making a guess
towards the Network (previously only giving correct Addresses for the
Bitcoin network), and instead leave TransactionOut.address as undefined.

TransactionOut.address is only defined in the case of Tx.addOutput:

      Transaction.addOutput(address, value).

Finally, and unfortunately, Transaction.sign still assumes that the
signed scriptSig is a pubKeyHash output... this will be fixed soon enough.