A Package for Differentiation of C++ Algorithms