A 2D engine for C++