Add rpc command 'getunconfirmedbalance' to obtain total unconfirmed balance

Conflicts:
	src/rpcserver.cpp
[Qt] fix RecentRequestsTableModel function ambiuguity

- fixes a compiler ambiguity error with ::createIndex() called in
  RecentRequestsTableModel::index()
- also add some Q_UNUSED() macros
add new RPC implementation file `rpcmisc.cpp`
Move `getinfo` from rpcnet to rpcmisc

`getinfo` is a general info method which shows information
from multiple sources, it doesn't belong in rpcnet.cpp or
any of the other current RPC implementation files.
Move `settxfee` from rpcblockchain to rpcwallet

`settxfee` only affects the wallet, not the block chain.
Move `nTransactionFee` from main.cpp to wallet.cpp

Transaction fee is only used by the wallet.
No need for it to be in main.cpp.
Move `validateaddress` from rpcwallet to rpcmisc

Enables it in --disable-wallet compiles.
Delimit wallet-using part using #ifdef ENABLE_WALLET.
Move `createmultisig` from rpcwallet to rpcmisc

Enables it in --disable-wallet compiles.
Move `verifymessage` from rpcwallet to rpcmisc

Enables it in --disable-wallet compiles.
Remove unused ThreadSafeHandleURI from ui_interface
Remove unused ThreadSafeAskFee from ui_interface

ThreadSafeAskFee is effectively unused. It is only called
when the fAskFee parameter on SendMoney or SendMoneyToDestination
is true, which never happens. Remove it.
Remove -logtodebugger

`-logtodebugger` is a strange, obscure, WIN32-only (mostly MSVC) thing.
Let's clean up the options a bit get rid of it.

test_bitcoin was using fLogToDebugger as a way to prevent logging to
debug.log. For this, add a boolean (not exposed as option) fLogToDebugLog that
defaults to true and is disabled in the tests.
qt: status WalletModel::Aborted is no longer used

Aborting transactions happens in the GUI now as it should,
not the backend.
Seperate out wallet options in help message

Seperate out the wallet options in HelpMessage, and
don't show them if compiled with --disable-wallet.

Also add documentation for `-disablewallet` option.
qt: Prevent non-functional GUI from popping up during Init

When a InitError or InitWarning happens, the
GUI pops up but is unusable (until Init finishes).

This is caused by showNormalIfMinimized. Add a message
flag to skip this call for Init errors or warnings.
[Qt] style-police, add missing license headers

- add missing license headers in Mac files
- small code formating cleanups
Merge pull request #3381

7df07b3 [Qt] fix RecentRequestsTableModel function ambiuguity (Philip Kaufmann)
Merge pull request #3424

06eb2f2 Seperate out wallet options in help message (Wladimir J. van der Laan)
Merge pull request #3415

4a61c39 qt: status WalletModel::Aborted is no longer used (Wladimir J. van der Laan)
ca2c83d Remove unused ThreadSafeAskFee from ui_interface (Wladimir J. van der Laan)
37e67d3 Remove unused ThreadSafeHandleURI from ui_interface (Wladimir J. van der Laan)
Merge pull request #3433

6c1bf19 [Qt] style-police, add missing license headers (Philip Kaufmann)