added callback macros
compiling on linux with c++11 directive
added keyboard support