Small optim

Now SDL only redraws the part of the screen that needs it.
Update optim: now correct (CLR & overflow)
Better system management

Now can be paused from the start
Uses a thread to leave the main thread alone
better use of the SDL events
better code structure for when we'll go into actual compiling