Support tabbing through controls in modals, popovers, and selects

I rebased the work that @thangdinh did, as he will be unable to work on this for a while. Not very familiar with the code, so hoping that someone else is.

@cyril-sf @azirbel @Dylnuge @jpriceAddepar 
This changes the logic a lot more than just "not a tab key" which would be `unless event.keyCode is @KEY_CODES.TAB` (which you might have to add). What's the intent here?