WinRT: minor keyboard code cleanup

An internally-used hash table was replaced with a plain switch statement.
WinRT: Fixed bug whereby a right-shift key might get reported as left-shift