See #339. I did some refactoring (not yet merged) to avoid cases where these abstract services might conflict with an actual service we create (due to filling in the index/type names). I think this service ID could be tweaked to avoid such a conflict.