DRILL-1309: Implement ProjectPastFilterPushdown and update DrillScanRel cost model so that exclusive column so that star query is more expensive than exclusive column projection. Various fixes affecting record reaaders to handle `*` column as well as fixes to some test cases.

exclude parquet files from rat check
DRILL-1355: Ensure Drill optimizer will use storage plugin specific rules, when a new storage plugin is added.
DRILL-1258 : Fix compile error in generated code when Drill evaluates an expression returning a repeated list
DRILL-1265: Drill may incorrectly return null when evaluates an expression of repeated list. The fix is to correctly set offsets vectors for repeated list vector.
DRILL-1359 Fix reading and writing of repeated scalar types in Parquet
DRILL-1340: Add support for JDBC metadata.
DRILL-1315: Allow complex zookeeper string for JDBC connections, same as ODBC.
DRILL-1364: Remove extraneous old jersey-* jars from distribution.
DRILL-1346: Use HBase table size information to improve scan parallelization
DRILL-1299: Enable short circuit evaluation for case expressions in the run-time generated code.
DRILL-1329: External sort memory fixes
DRILL-1334: Make sure to copy operator id while cloning ParquetGroupScan
DRILL-1274: NOTICE and LICENSE for binary distribution (includes DRILL-1267).
DRILL-1307: add support for fixed binary columns in parquet reader.

DRILL-1314: Fix issue reading impala produced files

DRILL-1304: Regression selecting a single column from a parquet file.

Fixed issue with var length dictionary reading.

Reduced memory usage by freeing buffers after we finish reading a page (except for dictionary pages which need to be kept in memory until the entire row group has been read)

Rebased onto merge branch.

Successfully backed out the changes that had changed the structure of the nullable column readers. This re-introduced some redundancy but avoided a bug that was holding up the release. Ended up falling back on the higher level reader API, only in the case where we are reading a dictionary column and then the next page is not dictionary encoded. This can be fixed to use the optimized read instead, but it doesn't conform to the overall structure of the current reader and is a bit difficult to fix.
DRILL-1365: output unified coordinates at profile view
Fix for Parquet reader in larger files brought about by more aggressive memory management.
DRILL-1366: HBaseRecordReader does not set rowcount correctly if vectors run out of memory in the middle of the row.
Maven cleanup & pom fixes
DRILL-1171: Create Drill's implementation of ReduceAggregatesRule, including a new CastHigh function.
DRILL-1342: Fix nullability handling of aggregate functions.
Fix allocation errors and bug in external sort