A C++ Dependency Injection Framework