Add RPC Plugin interface to let users implement their own RPC protocols such as
Protobuf, Thrift, Avro, Memcache, whatever.
Modify TSDB.initializePlugins to load RPC plugins on startup only when the
calling tool code specifies that RPCs should be initialized, e.g. the TSDMain
tool. Other tools may want the search or RT plugins but not the RPCs, e.g. the
UidManager tool.
Users can specify multiple RPC plugins. They are initialized and stored in a
list. Then on shutdown, the list is iterated and each plugin gracefully
shutdown.