Moved rendering/input spaghetti code into seperate component, arranged to be easily replaced with SDL2