Draft: Refactor DiscoverQueryService to work with arbitrary profile
Related to #966 (closed)
Decided the handling of profile here, which was the reason for doing this, is a bad idea for stats reasons. But a refactor to make more use of URI as we do here might be a good idea someday