Fixed handling of ADB event with key down and key up for same key all in...

This splits ADB events containing two key events, processing the second one the next time we (matrix_scan()) are called. This fixes cases where a single key is pressed and released in the same ADB event. To demonstrate this problem in the old version, set _delay_ms() to 1000 and press a few keys, one at a time. This causes the above condition. You should then get them, one each second, over the next few seconds. The old code will show nothing, while the new code will show all the keys properly.