A total rewrite of the keyboard handling to speed up the handling of the
interupts by not doing a full if this button, else that one. Instead it simply
calls the correct routine for the button directly

Also changed the part that cause most issues of the volume control to keep a
track of the number of presses, and to send the update every so often between
grabing of the incoming status messages.

Appears to work for me, at least much better than before