C++ Templates and Tools