Fix https://github.com/julianhyde/optiq/issues/284, "Window functions Range defaults to CURRENT ROW" and https://github.com/julianhyde/optiq/issues/285, "Window functions throw exception without ORDER BY".
Add IS_NOT_NULL SqlKind enum.
Use SqlKind.IS_NOT_NULL where possible.
Fix https://github.com/julianhyde/optiq/issues/286, "Error casting MongoDB date".
Fix https://github.com/julianhyde/optiq/issues/290, "Add SqlRun, an idempotent utility for running SQL test scripts".
Fix https://github.com/julianhyde/optiq/issues/288, "Add tests for windowed aggregation based on Postgres reference queries"
Add MySQL formatting mode to SqlRun. Move outer-join tests from JdbcTest into outer.oq.
Add "!skip" command to SqlRun.
Fix https://github.com/julianhyde/optiq/issues/294, "Implement DENSE_RANK windowed aggregate function".

Changes to the `AggImplementor` and `WinAggImplementor` interfaces to provide richer context to user code implementing a (windowed) aggregate function.

RelDataType instances created via built-in type strategies are now NOW NULL. Add 'boolean nullable' parameter to RelDataTypeImpl.proto methods.

Upgrade to linq4j-0.4, and add 'final' to code-generator variables, per https://github.com/julianhyde/linq4j/issues/27.
Adding IS_NOT_TRUE and IS_NOT_FALSE SqlKind enums.
Also use SqlKind IS_NOT_NULL for IS_NOT_UNKNOWN operator.
Clean up and document SqlKind.
Add tests for `NOT IN` where sub-query returns NULL values.

Add a row to the `emp` data set with a NULL value for `deptno`.
Improve window aggregates