Remove deprecated methods.
[OPTIQ-340] Fix bug in SqlToRelConverter when push expressions in join condtions into Project.
Restore PushFilterPastJoinRule to RelDecorrelator; interim pending [OPTIQ-443] fix.
[OPTIQ-345] AssertionError in RexToLixTranslator comparing to date literal
Add test case for [DRILL-1149].
[OPTIQ-347] In SqlRun, add '!plan' command
[OPTIQ-346] Add commutative join rule

CommutativeJoinRule is currently disabled.  Specifying "-Doptiq.enable.join.commute=true" enables CommutativeJoinRule and disables MergeProjectRule; the two together caused a planning-time explosion.

Tweak cost of joins, so that the left input contributes more to the cost than the right input (L log L vs. R). This reflects the cost of populating a hash table with the LHS. All else being equal, a join is more efficient if the smaller input is placed on the left.

Remove EnumerableJoinRel.getRows(), which was computing join row count assuming a many-to-one join. Fair enough, but it did not recognize that joining to a filtered dimension table reduces the row count of the fact-dimension join.

Fix display of a plan's provenance when one of the rule operands was a RelSubset.

Enable writing tests that provide arguments to EXPLAIN PLAN.
Eliminate duplicate conditions in RexProgramBuilder.addCondition, not RexBuilder.makeCall as previously.
Specify return type when calling RexBuilder.makeCall, if possible.
SqlRun: allow '!plan' after '!ok' for same SQL statement.
[OPTIQ-354] Change maven groupId to "org.apache.optiq"
Add methods and tests for BitSets, and re-organize tests.
Throttle down PartiallyOrderedSetTest.
Refactor test infrastructure to allow testing against heuristic bushy-join optimizer.

Add enum OptiqAssert.SchemaSpec, to allow more uniform use of various schemas in the test suite.
Convert Hook to use Guava Function (was linq4j Function1).
[OPTIQ-349] Add heuristic join-optimizer that can generate bushy joins

Add Util.human(), to format numbers like 'du -h' does.

Try harder to estimate row-count from abstract RelNodes.

Implement Metadata.toString() in reflective metadata provider.

Add row-count estimates to TPC-DS schema, and run heuristic bushy join algorithm on TPC-DS query 17.
Add test case for [DRILL-1199] Order by nested inside a where clause fails
Add fluent method withHook, to more easily add hooks in tests.

Previously you had to call Hook.addThread outside the test, and remember to close it in a 'finally' block. Now the AssertQuery instance has a list of hooks, and remembers to close them all. You can use hooks to, for example, enable non-standard combinations of planner rules.

Fix TPC-DS row-count estimates.
Fix cartesian products in OptimizeBushyJoinRule.
Fix build breakage on JDK 1.6 due to missing method BitSet.previousClearBit.