Add keyboard handlers. ENTER & SPACE will cause the current action or, if no button focused (which should not happen - onblur handlers attempt to constrain focus to the buttons), will confirm the modal. ESC will cancel the modal, if a cancel button is visible, otherwise will do nothing. TAB will cycle through the buttons.