Perhaps I'm confusing the goal here but something that I've wanted for a long time is to not just pick the first item in the list but to loop over it till an import works. 
Something like this:
```python
if class_name in self.overrides:
    ...obvious...
else:
    for implementation in self.implementations:
         try:
             module = __import__( .... )
             break
         except ImportError:
             self.config.logger.debug('Tried importing %s from %s' % (.....))
    else:
         raise ImplementationConfigurationError(
             'Tried but couldn't import %s in any of the implementations' % file_and_class
         )     
```

That means, if we have something like this:
```
(r'/supersearch/(.*)', 'supersearch.SuperSearch'),
```
in the `SERVICES_LIST` then it means we won't have to set up:
```
'webapi:socorro.external.elasticsearch, '  # search in future
```
in the `services_overrides`. Basically, it'll go through the implementations, one at a time, till it succeeds to `from socorro.external.elasticsearch import SuperSearch`. 

Ultimately having to maintain and config update the `services_overrides` is a pain and a loop would solve that.