(PUP-500) Increase coverage of collection queries

The tags and array handling of collection queries is "special". This adds
some test coverage around that behavior, as well as the "+>" behavior of collection.

There were several acceptance tests which covered some of these behaviors, but there was little reason to use that level of testing for the feature. By translating those tests to spec tests it cuts the time it takes to run them by abou 100x and shortens the feedback cycle.