Allow multiple types of the same service to have valid endpoints

I haven't had time to write a test for this, but I'm just getting it out there before I forget about it (fwiw, it works for them and worked against regular production). A QE dev came to me because they had a pre-production environment that had multiple "compute" entries in the service catalog, but some Ansible script wasn't working with the right compute environment. Previously, only one entry of each type was allowed, but this change allowed their additional environment to show up, and then using their environment specific config allowed pyrax to actually work as needed.