CRPCCommand.unlocked -> CRPCCommand.threadSafe

unlocked could be confused with wallet encryption

Conflicts:
	src/bitcoinrpc.cpp
make bitcoinrpc.cpp UTF-8 conformant again

- just replaces a character in a comment, which I had problems with when
  opening the file in Qt Creator IDE
update default -rpcsslciphers to include TLSv1.2

- this extends the accepted ciphersuites with TLSv1.2 ones
- also removes !AH, as I could not find documentation on it and the change
  did not result in a changed ciphersuite list (checked via openssl
  ciphers -v)
- closes #3096 (which also contains more details)
Avoid core dump if rpc port is in use.

The cleanup code needs to check for NULL rpcworkers thread group.
misc small spelling/indentation fixes
RPC: strictly require HTTP URI "/"

Previously, JSON-RPC clients accessed URI "/", and the JSON-RPC server
did not care about the URI at all, and would accept any URI as valid.

Change the JSON-RPC server to require URI "/" for all current accesses.

This changes enables the addition of future interfaces at different
URIs, such as pull request #1982 which demonstrates HTTP REST wallet
download.

Or, a future, breaking change in JSON-RPC interface could be introduced
by serving JSON-RPC calls from new URI "/v2/".
RPC client option: -rpcwait, to wait for server start

Conflicts:
	src/init.cpp
a small change to a string in bitcoinrpc.cpp