PyGame to SDL2 conversion, because PyGame is garbage