Provide support for "All Tenants" access

This moves some of the per-tenant result filtering
into the storage layer, a necessary pre-requisite to supporting
both the v1 and v2 APIs for record access.

Again, Additionally, This fixes a number of issues we had with
our existing tests, where the handling of tenant_id's was
inconsistent.

Change-Id: I1a20a3c81edbf74a7d6256118d206e509c6da65c
Introduce RecordSets concept to core, and add initial RRSet API to v2

The v2 RecordSet API is experimental. This commit is intended to only provide
a stable experience with the V1 API.

Change-Id: I168401d8ce3066a19d3538b3ec5cd36338b10b44