Add all functions that can be called platform independently.
using grabbed mode
fixed displaymode using grabbed mouse mode empty mouse buffer
simple optimization
cleanup and fixes
fixed display mode bug
check that controller is actually created!
comment fixing
*** empty log message ***