Make compute_api use Service and ComputeNode objects

This converts compute_api (and associated nova-api and test code)
to use Service and ComputeNode objects for their work.

Note the removal of the nova.db import from compute/api.py.
There is still a chunk of code that uses self.db, but it's
progress.

Related to blueprint compute-api-objects

Change-Id: I7d0b4c0d02559ec16b35dd38278cdf738e0fda6c
Merge "Make compute_api use Service and ComputeNode objects"