start to split into node commonjs style modules

- no longer is the global Bitcoin used for modules
- cleaner and more maintainable code
- add more tests
remove old build and vendor files
add testling info to package.json
fix test require so browserify works for testling
fix sha256 hex conversion
update cryptojs hashes to v3.1.2
add test coverage via istanbul
fix transaction processing for wallets
port message to common.js style and add tests
Support decoding non-prod addresses.
Add testnet support to the wallet.
Let TransactionOut take a number for value.
Allow Transaction.addOutput to take a serialized address.
Remove use of Bitcoin from transaction.js
Add test for exported & importing keys.
Merge remote-tracking branch 'twistandshout/master'