Add support for ~ keybinding

Added support for toggling the case, mapped to the `~` key.

I can't quite figure out how to properly do the undo so that the cursor goes back to its original place.  I noticed that its mapped to `core:undo`.

Please let me know if there's something I can do to add that in.