Add --source option to CLI

This lets you set the source of the query for logging purposes. Tested
by running the CLI with --help to make sure the option showed up, and
added a unit test
Use UUID for native shard IDs
Work around race condition in import flow used by TestDistributedQueries
Add hash partitioning to distributed planer
Extract tupleInfos and sources in PlanFragment constructor
Move all exchange scheduling logic to SqlStageExecution
Manage output buffer set as single unit
Add hash partitioned aggregations
Change HashAggregationOperator to support multi channel group by
Move loop logic into aggregations
Isolate aggregates in separate classloader
Change join operator to support multi channel hash
Remove unused packIfNecessary from visitSemiJoin
Change sort, topN and window operators to support multiple channels

Remove single channel packing from LocalExecutionPlanner
Change variance intermediates to use hand built slice instead of a multi channel tuple
Change TupleInfo to support only a single value
Remove unused DirectFieldOrderedTupleComparator
Remove getTypes, getFieldCount, and getFieldOffset from TupleInfo
Remove unused UncompressedBlockCursor
Remove unused AlternatingNullsBlockCursor