Handle all wildcards (`{*}`, `[*]`, and `.*`).

* `{*}` requires map/reduce
* introduce `Splice` for wildcard projections
* `Wildcard` is replaced by `Splice(None)`
* `{*}` and `[*]` expand to the equivalent functions
* `namedProjections` doesn’t name flattening of the entire relation
Merge remote-tracking branch 'upstream/master' into ready/173-object-flatten

Conflicts:
	src/main/scala/slamdata/engine/compiler.scala
	src/main/scala/slamdata/engine/semantics.scala
	src/main/scala/slamdata/engine/sql/parser.scala
	src/test/scala/slamdata/engine/backend.scala
	src/test/scala/slamdata/engine/semantics.scala
Merge pull request #322 from sellout/ready/173-object-flatten

Handle all wildcards (`{*}`, `[*]`, and `.*`).