Configurable keymaps via config file
- Added a map that holds all the key codes we use
- Read all the key codes from that map instead of using the hard coded values
- Before assigning the key codes, optionally overwrite the codes specified in that map with values set in the config file