Keyboard shortcut fixes

Two different fixes here, in separate commits.

##### 4a0229e fixes the [, ], and \ chart rotation keys on OS X. #####
Previously the handlers for these keys had been moved from `OnKeyDown` to `OnKeyChar`, apparently for better compatibility with some non-english keyboards.
However this broke the shortcuts on OS X since the `event.Skip()` call was commented out for OS X.
Rather than uncomment it, I have re-enabled the handlers in `OnKeyChar` for OS X only. This works better, since on OS X pressing Alt changes the character produced by the keys, so the alt+] etc shortcuts wouldn't work with `OnKeyChar`. Using `OnKeyDown` they work fine.

I think that by changing to use `GetUnicodeKey()` instead of `GetKeyChar()` the whole keyboard handling routine could be cleaned up somewhat, and everything would work more reliably and all in `OnKeyDown`.
But this would need a *lot* of testing so I am not going to do it now.

##### 5b62bcc fixes the ctrl-arrow keys for moving up and down the chart stack. #####
This fixes a bug I introduced in a late change to my menu handling code, which caused the ctrl-left and ctrl-right keys to be inverted if menus were enabled.