DRILL-259: Implicit cast functionality
Includes following changes:
Implicit cast : WIP.
Implicit cast: work in progress 2.
implicit_cast: workin in progress 3.
implicit cast : work in progress. Prototype works.
Implicit cast: add unit testcase. Handle null vs non-null type.
Implicit cast: add unit test. change comparision operator's allsame from true to false.
Drill-259: implicit cast. Rebase on Drill-316 explicit cast branch.
DRILL-259: implicit cast . reverse change to codegenerator.
DRILL-259: implicit cast. code clean.
DRILL-259: code clean.
Drill-259: add apache license to 7 new java files. reverse the change to pom.xml
Drill-259: minor change to test case.
Drill-259: implicit cast - process NullExpression. Convert NullExpression into TypedNullConstant.
Drill-259: implicit cast. Revise according to review comments.