Changes for newer Charles versions

- fixed the Makefile so it does dependency checking. 
- fixed the gui.c so it redraws, and the ncurses gui is basically obsolete now.
- moved the command list from the main function to karel.c, so adding commands only requires changing a single file.
- copy-pasted in some recently added functions in the original package