Low power consumption (0.1 uA) but wake up on keypad press

Sounds like the sleep code should be incorporated into a Keypad library. A variant of keypad.getkey() could be used to sleep until a key is pressed. It would probably be necessary to allow the depth of sleep to be adjusted.