[rackspace] changing service catalog implementation

This PR re-implements the service catalog for the Rackspace Cloud. In addition to being more efficient, it provides the following fixes:

* If a user requests service endpoint for region X and the service only has one endpoint which is in region Y, it will return region Y. It now throws an exception.
* Service net endpoints are now pulled from the catalog rather than being built by the service.