Initial code commit. Code can read the key matrix and affect the leds, can detect button press events, though it may need to be reconfigured to use the proper timer hardware to give us more time between interrupts. Higher clock speed might also be a better idea.