Fix Script.getNumberOfBytesRequiredToSpend for P2SH

It is a size of redeem script that should be taken into account, not a
size of scriptPubKey
Upgrade to Bouncy/Spongy Castle 1.51
Switch to accelerated secp256k1: huge speed improvements.
adds helper methods Transaction.getWalletOutputs, TransactionOutput.getAddressFromPubKey and TransactionOutput.getAddressFromScript.
Merge branch 'master' of github.com:kmels/bitcoinj
Re-allow Android devs to override the mnemonic code instance.
Use a local Bitcoin node if one is detected instead of the p2p network. This allows any user of a bitcoinj based app to upgrade from SPV to full mode security by just installing and running Core on the same machine. Can be controlled with a new property on PeerGroup.
Merge branch 'master' of https://github.com/bitcoinj/bitcoinj
Improve javadocs, revert unnecessary unmodifiable list
Fix typo
close connection regardless of autocommit status and set conn to null
Add some javadocs for Wallet.fromWatchingKey
Fix Java 6 compatibility.
Fix race between connectionClosed() and ConnectionHandler()
Fix memory leak on timeout in NioClient
ConnectionHandler: Make comment a bit clearer.
Support for bundling an optional info Protobuf ByteString with an UpdatePayment message.
Payment channels:  ByteString.EMPTY -> null