**Is your feature request related to a problem? Please describe.**
The Caps Lock and Fn keys are useful to some, and not others. I would greatly enjoy being able to use these keys as modifiers for something more useful to me.

**Describe the solution you'd like**
Add global shortcuts support for the cap locks and fn keys. While these keys are not useless and are not proper modifier keys, I feel that the design choice should be left to the app developer.

**Describe alternatives you've considered**
The only alternative would be to use a keypress listener/sender to 'remap' the key to something Electron supports; or substitute electron's shortcut functionality completely.

**Additional context**
Using a 3rd party keypress listener does not feel safe.
atom/common/keyboard_util.cc
return ui::VKEY_SPACE;
  } else if (str == "backspace") {
    return ui::VKEY_BACK;
  } else if (str == "delete") {
    return ui::VKEY_DELETE;
  } else if (str == "insert") {
    return ui::VKEY_INSERT;
  } else if (str == "enter" || str == "return") {
    return ui::VKEY_RETURN;
  } else if (str == "up") {
    return ui::VKEY_UP;
  } else if (str == "down") {
    return ui::VKEY_DOWN;
  } else if (str == "left") {
    return ui::VKEY_LEFT;
  } else if (str == "right") {
    return ui::VKEY_RIGHT;
  } else if (str == "home") {
    return ui::VKEY_HOME;
  } else if (str == "end") {
    return ui::VKEY_END;
  } else if (str == "pageup") {
    return ui::VKEY_PRIOR;
  } else if (str == "pagedown") {
    return ui::VKEY_NEXT;
  } else if (str == "esc" || str == "escape") {
    return ui::VKEY_ESCAPE;
  } else if (str == "volumemute") {
    return ui::VKEY_VOLUME_MUTE;
  } else if (str == "volumeup") {