This took a bit of brain surgery to firmware.py that deserves its own
commit message beyond the default merge commit message - tl;dr though,
it appears to work fine.
This allows leader sequences to "time out" rather than requiring an
Enter keypress to end.
This also rolls back some unnecessary changes from #72 to the matrix
scanner for performance reasons.
In theory we can use this in the future for Tap Dance support (#40)
Resolves#1Resolves#37
Resolves#70, Resolves#67
Still needs some regression testing in general, and a definite
regression is that rotary encoders are no longer (for the immediate time
being) supported.
Moves to a much simpler internal state tracking system, and FAR lighter
matrix scan.
Removes MicroPython support entirely.