Support Cassandra String based partition keys
Remove verifier limit of 50 threads
Remove pluggable global connectors

We only have one connector (the system connector), so get rid of the abstraction.
Also, since the system needs to have specialized logic for dealing with sys tables,
get rid of the system connector. We'll revisit this once we figure out how we
want to model it going forward.
Don't forward requests for well-known schemas to connector

This requires hard-coding knowledge about sys and information_schema in
MetadataManager. It's a hack until we figure out how we want to model
these going forward.
Create AsyncResponseHandler builder pattern

- Replaces AsyncResponseUtils
- Adds ability to asynchronously cancel on client disconnect
Include response body in remote task error message
Add streaming index join support
Remove copies of ThreadContextClassLoader
Set context class loader when creating connectors

The default context class loader for the main thread is the application
class loader, which is never correct for plugins to use.
Cap maximum number of remote task callback threads
Add support for distributed joins
Remove unused method, and fix intellij warning
Cache HiveType category during construction