* Electron version: 1.5.0
* Operating system: macOS 10.12

### Expected behavior

* An `uncaughtException` event is emitted on `process` in the main process for thrown errors

### Actual behavior

* Event is not emitted
* Error is logged in the terminal

### How to reproduce

* `throw Error('here')` in the main process
* Dialog does not popup

Only appears to happen in 1.5.0, not 1.4.x, possibly related to the node 7.4 upgrade.

atom/common/node_bindings.cc
embed_closed_ = true;
  uv_sem_post(&embed_sem_);
  WakeupEmbedThread();
  
  uv_thread_join(&embed_thread_);
  
  uv_sem_destroy(&embed_sem_);
}
void NodeBindings::Initialize() {
  
  node::g_standalone_mode = is_browser_;
  node::g_upstream_node_mode = false;
#if defined(OS_LINUX)
  
  if (!is_browser_)
    AtomCommandLine::InitializeFromCommandLine();
#endif
  
  
  node::Init(nullptr, nullptr, nullptr, nullptr);
#if defined(OS_WIN)
  
  
  std::unique_ptr<base::Environment> env(base::Environment::Create());
  if (is_browser_ || env->HasVar("ELECTRON_DEFAULT_ERROR_MODE"))
    SetErrorMode(GetErrorMode() & ~SEM_NOGPFAULTERRORBOX);
#endif
}
node::Environment* NodeBindings::CreateEnvironment(