Dependency injection container