Initial query rewrite support.

Currently supports matching columns, literals and count(*) in the selection
and columns in grouping.


...also, `PartialFunction` defeats exhaustivity checking.