DRILL-1107: Fix possible infinite loop in merging receiver

This bug was introduced in previous patch.
DRILL-1116: Flush batch when copy fails due to insufficient space
DRILL-1117: Fix stats in partition sender
DRILL-879: Fix show files to treat '/' as a root of workspace instead of FS
DRILL-755: Show files without FROM clause should display files in default workspace
DRILL-1101: For Union-All, allow strings of different lengths on either side of the union to be treated as compatible.
DRILL-1118: In case of error, always set QueryState to FAILED

+ Added a null check in o.a.d.exec.physical.impl.producer.ProducerConsumerBatch.clearQueue()
DRILL-1113: Add configuration in DrillClient to encode complex/repeated types as JSON string
DRILL-1060: Support ComplexToJson for Array Data Type
DRILL-882 : Fix CanNotPlanException when join two different storage sources (hive vs parquet). Code fix in Optiq.
DRILL-1112: UI changes to storage plugins only take effect after a drillbit restart.
DRILL-1133: Default cp and dfs storage plugin instances do not appear in Drill Web UI after installing Drill.

* Modified StoragePluginRegistry to scan for ALL 'bootstrap-storage-plugins.json' files in the classpath instead of only the first one.
* Moved 'hbase' and 'hive' plugin instance definitions to their own module from 'java-exec'.
* Renamed the test storage plugin instances to 'dfs_test' and 'hive_test' and updated the test cases to reflect this change.
DRILL-1134 : Fix compilation exception in run-time code, when filter uses two or more array types.