(PDB-1028) Make /v4/catalogs queryable

This expands the /v4/catalogs endpoint to have full query and paging capacity,
and brings the catalogs endpoint into the query engine like the others, which
will be useful for syncing and future consistency. This patch changes the /v4/catalogs response to be a list and changes the response schema to include a hash key.
I think maybe this is here to support querying catalogs in v2/v3, is that right? If so I think we can get rid of it as this code will just need to be removed before we release PDB 3.0.0