code cleanup. And minor extendsion to the keyboard library,
added Protocol.debug and made some code cleanup.
code cleanup and added GPL licence to some of the files.
Code cleanup.
Added some comments/Documentations.