build correct workflow for groupby with JS (Fixes #469)

Avoid creating GroupBuilders on top of ExprBuilders, and conversely
favor making ExprBuilders over modifying the base in
ShapePreservingBuilders. This fixes all the cases covered by the
existing scalacheck test.

Added a pending test for queries with filtering, some of which are
still not working right (see #524).

Now simplifying JsCore that was generated by collapsing some of these
cases—specifically selecting a field from an object literal where the
keys is a constant.

Fixed an infinite loop in fixplate.

Improved RenderTree instances for \/ and These: no more blank nodes;
use nodeType, not label.
String breaks are not allowed in JSON, surprised this parses.