Make config.h clearer.
Improve matrix debounce code.

Add two additional key states. pressed and release only are set in the
cycle the key changed its state.
Make Usb::SendReport blocking.

This prevents multiple matrix updates in one usb poll cycle.