Rewrite/Reorganization of the libtcod library in C++