Dependency injection and configuration