Abstraction layer for dependency injection.