fixed things on linux to work with SDL2, but something is still broken so GameWindow.screen is uninitialized
made Thread use std::thread
made it work on linux, changed things so that now drawing and event polling are one thread, which is required for it to work,
unless some how opengl is made current in the drawing thread, this can be seen by gdb reports a segfault
in either glEnable() or glClearColor() if drawing is its own thread