Currently, when a user calls `makeSingleInstance` they need to handle the second instance in a callback.

A better pattern for both users and third-party modules who want to use this information would be to emit an event on the `app` module when the second instance starts.

A pattern like:

```js
app.makeSingleInstance();

app.on('second-instance', (e, argv) => {
  // do-stuff
});
```

As step 1 I'll introduce support for the event and deprecate the callback.  Then in a major version, we can remove the callback.
atom/browser/api/atom_api_app.cc
if (size == "small") {
    return IconLoader::IconSize::SMALL;
  } else if (size == "large") {
    return IconLoader::IconSize::LARGE;
  }
  return IconLoader::IconSize::NORMAL;
}
int GetPathConstant(const std::string& name) {
  if (name == "appData")
    return brightray::DIR_APP_DATA;
  else if (name == "userData")
    return brightray::DIR_USER_DATA;
  else if (name == "cache")
    return brightray::DIR_CACHE;
  else if (name == "userCache")
    return brightray::DIR_USER_CACHE;
  else if (name == "logs")
    return brightray::DIR_APP_LOGS;
  else if (name == "home")
    return base::DIR_HOME;
  else if (name == "temp")
    return base::DIR_TEMP;
  else if (name == "userDesktop" || name == "desktop")
    return base::DIR_USER_DESKTOP;
  else if (name == "exe")
    return base::FILE_EXE;
  else if (name == "module")
    return base::FILE_MODULE;
  else if (name == "documents")
    return chrome::DIR_USER_DOCUMENTS;