Update to SDL2 and to a more modern Rust style