Join order: Use parquet row count as the basis of scan cost. Transform select count(*)/count(columnName) into DirectGroupScan when possible.

Nullable return type for extract function.

Fix a bug in DrillProjectRule. Fix bug in ProjectPrule, set Direction for RelCollation trait.

Set nullable properly for extract function's  return type and 'any' type in view DDL or table field lists.
In Logical rule, use child's trait when convert child to logical.  Propagate traits from child to parent, for Project/Filter etc.

Clean up in TestJdbcDistQuery test case.
DRILL-687: Support selecting Date, Timestamp, Decimal data types from Hive into Drill

Add unit test
DRILL-688: Fix timestamp constant serialization
Add Hive UDFs to sql operator list.