Fix https://github.com/julianhyde/optiq/issues/127 EnumerableCalcRel can't support 3+ AND conditions
Change planner rules to use ProjectFactory for creating projects.
Make RelMdDistinctRowCount, RelMdSelectivity extensible.
Fix NPE in CachingRelMetadataProvider if arg is null.
Merge remote-tracking branch 'remotes/julian-optiq/master'
Improve best rel in a Volcano subset doesn't have metadata, carry on looking. Disable assert on metadata.rel().
Fix https://github.com/julianhyde/optiq/issues/137, "If a subset is created that is subsumed by an existing subset, its "best" is not assigned".
Fix some checkstyle exceptions, and remove entries from the checkstyle suppressions file.

Obsolete one class where we can use Guava instead.
Fix https://github.com/julianhyde/optiq/issues/138, "SqlDataTypeSpec.clone handles collection types wrong".
Fix https://github.com/julianhyde/optiq/issues/135, "Add a PARSE_TREE hook point with SqlNode parameter".
Upgrade to guava-15.0 (guava-14.0.1 still allowed) and sqlline-1.1.7.
Update history.
Fix https://github.com/julianhyde/optiq/issues/136, "Support Hive dialect".
Merge branch 'master' of https://github.com/julianhyde/optiq