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.
@SonjaKhan Wanted to give you visibility on the fact that `services.AddEntityFramework()` will be adding the LoggerFactory service by default if it isn't already in the service collection. This is done to simplify testing and applications that are using DI and EF but are not ASP.NET vNext Web applications (i.e. they don't get the service automatically added by Hosting).