Add failing tests for string operations.
Add support for string operations.

`substring`, `lower`, and `upper`. Also added `length`, but it has no implementation on the Mongo side.
Add falling test for modulus.
Implement modulo.
Add failing tests for coalesce.
Implement coalesce/$ifNull.
Fix Cond with non-Const condition.
Merge pull request #117 from sellout/63-additional-operators

Add support for additional operations.
expand nested Reshapes
assemble sort keys into an array, and then sort on its elements, each on the right order
tests for filter with expr in projection (pending);
update and enable test for sort with wildcard and expression in sort key
don't show the stack trace in trees
Implement date field extraction.
Add array length operation

Postgres supports multidimensional arrays, so `array_length` takes a second parameter for the dimension. This currently only generates a plan when the dimension is 1. We could approximate higher dimensions by returning maybe the length of the largest sub-array at the appropriate depth.
Connect conditionals to Mongo.
Rename `Time` to `Temporal`.
Show join relation in ShowLogicalPlan.
Update the scala version to match Travis.
Fix a non-exhaustive match.