Remove unnecessary dependencies for bitcoin-cli

This commit removes all the unnecessary dependencies (key, core,
netbase, sync, ...) from bitcoin-cli.

To do this it shards the chain parameters into BaseParams, which
contains just the RPC port and data directory (as used by utils and
bitcoin-cli) and Params, with the rest.
Move coins.cpp and keystore.cpp to libbitcoin_common

Prepare for introduction of `bitcoin-tx` tool.