Explain why a transaction output value is kept as a long rather than Coin.
Wallet: move setTag to the extensions section of the file.
Wallet: remove a few dead stores identified via static analysis.
Add a forgotten @Test annotation and fix the expected exception type.
Remove some superfluous new String() calls around HEX.encode, now it has a sane API.
Wallet tool launcher for Windows

Essentially it is just a port of wallet-tool bash script
Fix autosave in WalletTool on Windows

Wallet.saveToFile failed to remove original wallet file because WalletTool
left open input stream. This error happened on Windows-specific code path

Stacktrace:
```
Failed to save wallet! Old wallet should be left untouched.
java.io.IOException: Failed to delete canonical wallet file for
replacement with autosave
        at com.google.bitcoin.core.Wallet.saveToFile(Wallet.java:834)
	        at
		com.google.bitcoin.core.Wallet.saveToFile(Wallet.java:863)
		        at
			com.google.bitcoin.tools.WalletTool.saveWallet(WalletTool.java:851)
			        at
				com.google.bitcoin.tools.WalletTool.main(WalletTool.java:362)
```
Give regtest mode its own ID so wallets don't get mixed up between regtest and testnet.
Married HD wallets: Bloom filter adjustments
Alter KeyChainGroup.toString for married keychains

Displaying xpubs of following chains and P2SH addresses

Sample output:
```
Wallet containing 0 BTC (available: 0 BTC) in:
  0 pending transactions
  0 unspent transactions
  0 spent transactions
  0 dead transactions
Last seen best block: -1 (time unknown): null

Keys:
Seed as words: zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo when
Seed as hex:   ffffffffffffffffffffffffffffffffffffffffffffffff
Seed birthday: 1381276800  [Wed Oct 09 04:00:00 MSK 2013]
Key to watch:  xpub6876hv3rq62MpC2TcYWWNJfvU3EyK4W2GJv5LUZW47fX1fyxeRs7NDniymbWKJmkHx2vMpz7pQprCemktgGvEyMan8W1XYwSMR51QdSy5Mu

Following chain:  xpub67tVq9TLPPoaJZk4mvYbbHbkXTLSYLbQh5yWrM43TaCh7E8gjMCQpj9W3CQy2gsLnZWEWUuxM6eMtaZybMx3TpAT1Hwi2rXTks5VKoTTdWR

  addr:2MuiN73p6LsB8amTQiXCbqqYv4ssBjfUFev  hash160:1b12420a41525e708b80980790b8caabc6c636be  path:M/0'/0/0
  addr:2N4LTmAtGNE6hsmDhtoK3bwPk42GAAyPh8R  hash160:79a6f618fb1c2b99a7e414c8443a5bc5df3fa8db  path:M/0'/0/1
  ```
Wallet Tool: add new method to marry the wallets