add DI Container with lazy loading