Fix regression tests

Taught bitcoind to close the HTTP connection after it gets a 'stop' command,
to make it easier for the regression tests to cleanly stop.
Move bitcoinrpc files to correct location.
Tidied up the python-based regression tests.
Update moved and dead links
Fix test build after d138598

Building the tests was giving some vague error message about a doubly-defined
symbol.

The solution is to define ShutdownRequested in test_bitcoin.cpp as well
so that init.cpp does not get pulled in.
qt: Do proper boost::path conversion

Convert from QString unicode from/to the OS-dependent locale
as used by boost::filesystem::path as needed.

Solves #3916.
qt: Only override -datadir if different from the default

Fixes #3905.
Remove duplicate from src/makefile.am

chainparams.cpp should not be in both libbitcoin_common and
libbitcoin_server. Also re-sort the sources list.
Merge pull request #3935

c61fe44 qt: Only override -datadir if different from the default (Wladimir J. van der Laan)
7e591c1 qt: Do proper boost::path conversion (Wladimir J. van der Laan)
Merge pull request #3951

3cb1edb Update moved and dead links (Luke Dashjr)
Merge pull request #3958

dfd3996 Remove duplicate from src/makefile.am (Wladimir J. van der Laan)