DRILL-1548: Remove jdbc-all from default build

* Allow devs to individually disable maven modules from build
* Removed duplicate dependency "pentaho:mondrian-data-foodmart-json" from exec/java-exec/pom.xml
* Removed duplicate dependency "com.mapr.hadoop:maprfs" from distribution/pom.xml
DRILL-1635: Propagate detailed error information when Drill sees a SQL parser error.
DRILL-1640: DrillColumnMetaDataList does not implement List methods
DRILL-1324: Add mechanism to detect schema changes when adding a new primitive vector in a Map, RepeatedMap, RepeatedList vector
DRILL-1619: Fix running and output type for count aggregate function Raise an exception while performing aggregate functions on boolean data type
DRILL-1634: Fix issue in complex type expression type resolution, when Drill queries a nested array.

code clean up.

add comment of code change.
DRILL-1525: Modify hash functions to use XXHash algorithm
DRILL-1566: C++ Client does not handle incoming record batches with zero records
DRILL-1417: ensure star column is passed to scan in case non-partition columns are empty
DRILL-1539: fix an issue regarding populateEmpties in RepeatedMapVector
DRILL-1585: C++ Client - Update RPC version and protobuf definitions for RPC version 3
DRILL-1578: Accountor message should be trace messages
DRILL-1480: Update Netty to 4.0.24.Final
- Update Parquet writer to always make binary copy of data for statistics holding purposes.  (Fixes JVM crash in certain cases.)
- Update WriterRecordBatch to stop doing premature cleanup.  In the case that a downstream operator is still holding memory allocated in the writer record batch, it was possible that the operator would try to close the allocator before that memory had been released.
Update WorkEventBus to immediately fail if Fragment is unavailable.  No need to wait now that we propogate intermediate fragments before leaf fragments.
DRILL-1544 : Support escape character in "like" or "similar to" SQL operator.

Conflicts:
	exec/java-exec/src/test/java/org/apache/drill/TestExampleQueries.java
DRILL-1661: Fix for setValueLengthSafe method in variable length vectors that was causing a failure in the parquet reader.
DRILL-1585: Update user rpc version due to changes in RpcFailure behavior.
DRILL-1663: Fix casting to a variable width type implicitly in a join condition

Factor out logic in ExpressionTreeMaterializer so the same logic can be reused in ChainedHashTable.
DRILL-1631: Bump optiq version to r8
Add test case. Fix is in optiq.