I am throwing a general exception type here at @loudej request. I believe part of the reason for having a "TODO: " in the exception message is to remind us not only to change the exception message, but also the exception type.

I think that if users are providing their own container, they should expect to get the exceptions that their specific container throws if that container cannot find a service. Maybe it would be good enough to make the container specific exception an inner exception though.