Providing a more helpful exception than a linq one.

We recently ran into this error where we were registering open generics and we had forgotten to actually implement the interface, face palm. The error thrown by Autofac was InvalidOperationException w/ no real data about the issue. This PR throws a `DependencyResolutionException` with a message that contains the implementation and the service type in question.

- The core tests are still passing
- I am not sure if this is the best place for the test itself
- let me know if I need to change anything per style issues.