Implement custom keyboard shortcuts support with a user key map file.

Will add JSDoc later.
We do have an empty file unit test, but json parser won't have a chance to parse since we also check for file content `if (text)` before calling the parse.