Integrated IEFContextFactory

Merged changes to support caching DbContextBuilder<T> in an IOC
Added Close and IDispose implementation to GenericRepository to provide
better control during unit testing.
Change DbContextManager to work with IEFContextFactory which makes
DbContext a per use rather than static variable.
Remove unnecessary code following restructure (e.g., GetAllContexts())
Change pooling in Test App.Config connection string; pooling causes
tests to fail because of lingering connections.