names: Implement API for retrieving domain names
#1330 (closed) was the result of directly using internal 'domains' data structure in names modules. Similar retrieval is being done in other places and is error prone. Introduce an API method in names/api.py
that would get the list of domains. Returned list of domains should not have repetitions. Optional filter_for_service parameter should filter out domains that don't support a particular service (can implement hard-coded logic for .onion domains for now). After implementing the API, ensure that no module outside names app uses names.domains by using this API. Make names.domains private.