IoC container added, about to start data access refactor