Handle many wildcard cases.

Fixes #38 and #229.

**NB**: `WorkflowBuilder.objectConcat` has gotten a bit ugly with
  various cases. I wouldn’t mind some feedback on improving that.

This leaves a few outstanding issues:

* results end up nested in `value` field (tracked in #287, but could be
  solved less generally than that for 1.0)
* sorts with expressions can leave extra fields in the result (tracked in #310)
This is operator is unsafe, except for skip & limit. It may be better to build skip / limit into the builder so we don't have to expose it. Of course the method existed already so this won't stop me from merging, just a heads up.