further c++ification of all the things