Added RPCCommand base classes in preparation for RPC migration
This is the scaffolding for soon-to-be RPC refactors. RPCCommand enables easy passing of dependencies only to the RPC commands that use them.
New RPCCommands can be written with appropriate dependency injection and old commands can be slowly migrated to use non-global dependencies.
Test Plan: ninja check
Reviewers: deadalnix, #bitcoin_abc, Fabien
Reviewed By: deadalnix, #bitcoin_abc, Fabien
Subscribers: Fabien, teamcity
Differential Revision: https://reviews.bitcoinabc.org/D1894