DRILL-336: Modified the netty direct memory manager to:
   1) Efficiently reduce ("trim") the size of a memory buffer, releasing the extra memory back to the memory manager.
   2) Opportunistically allocate larger buffers if it can be done efficiently.
   3) Raise a warning exception if resizing a buffer copies more than 1 page of data.
   4) Added Javadocs and some in-code comments.
   5) Created a Junit test to verify basic functionality.

The "trim" and allocation changes are primarily in PoolChunkL,
which breaks a "chunk" into runs of pages using a buddy system.

Take advantage of memory interface changes.
Memory fixes
Updates for memory issues (WIP)
DRILL-620: Memory consumption fixes

accounting fixes

trim buffers

switch to using setSafe and copySafe methods only

adaptive allocation

operator based allocator wip

handle OOM

Operator Context
Drill-400 change parquet reader to place varbinary fields into VarCharVectors, allowing them to be returned by default as UTF-8 Strings. Note that this will only be the case with newer parquet files that were produced after Converted Types were added to the format. This metadata stores the desired intrepertation of a column, but was not originally in the format. For older files you will still need to case binary data to Varchar.
Drill 419 - enable dictionary encoding in parquet reader.
Fix flapping test
DRILL-639: Adding status command to DrillBit daemon

Currently we have only start,stop, restart commands for Drillbit
daemon. Adding status command to DrillBit daemon.
DRILL-642: Fix for sqlline pom
Fixes for memory management and hbase reader.
Fix tests that have extraneous warnings, move VectorContainer from warning to exception when wrong vector type is requested.
Create DrillConfig.createClient() which gives a smaller and faster config object used in client-only situations.
Exchange optiq rules: no need to specify child operand in Drill logical/physical rules.

Add child specification to Project and Filter physical rules.
DRILL-631 : do not push projects down if scan does not support .

DRILL-631 : more work.

DRILL-631: Groupscan by default does not support project pushdown into scan.
DRILL-643: Fix ByteBuf allocation in o.a.d.exec.vector.ValueHolderHelper.getVarCharHolder()
DRILL-644: Fix char length and position calculation for UTF-8 strings in StringFunctionUtil
DRILL-645: Correct string encodings in code template
DRILL-381: Implement SYSTEM and SESSION options.
DRILL-219: Math Trigonometric functions
DRILL-627: Fix memory leaks in hash join and hash aggregate
DRILL-640: Fix memory leak in limit operator