Layout hotkey support

Added some logic for hotkeys to choose layouts, not sure how you have been handling the index of layouts (perhaps we could use global constants associated with each layout, for now I just hard coded them to the four available)