Update AddEntityFramework to ensure low-level required services are available

Or: It's our collection and we'll look if we want to...

Issue #890

These services are normally setup by the app environment in an ASP vNext app, but are not setup when we create the service provider or the service provider is being setup in some other app environment. This changes makes sure that however the service provider is used, then these required services are available just like all other services required by EF to run correctly.
How does line 697 prove that the options service has been replaced (I believe it has been - just not sure that this test proves that)? Otherwise looks good.