Move service_get_all operations to conductor

This patch adds a single service_get_all_by() method to the
conductor, which services the following database calls:

 - service_get_all()
 - service_get_all_by_topic()
 - service_get_all_by_host()
 - service_get_by_host_and_topic()
 - service_get_all_compute_by_host()

It also makes compute/manager use conductor for this case.
The special case for the service_get_all_compute_by_host() call
is rather unfortunate, and I wonder if it might be okay to (later)
make the generic function automatically joinedload in the compute
case.

Related to blueprint no-db-compute-manager

Change-Id: Ib4aa10a3196a4b9aa779f57f4e5d6b136676f3bd