AddDbContext method for DI

If you use the most common pattern everywhere else right now it would be for DbContext to have an Options property which is guaranteed to be initialized by every constructor.  So there could still be one primary constructor which took an instance, which the DI constructor fed the appropriate IOptionsAccessor.Options into.  

Child ApplicationDbContext's should be able to just use the .Options property.  This is similar to what the Security classes do today, they pass the IOptionsAcessor to a base constructor which ensures it is initialized properly, and then they continue via .Options in its derived constructor