cleanup, add shift-arrow selections

Clean up keybinding functions and define shift+arrow to extend selection for keyboard selections.