* Electron version: All
* Operating system: All

### Expected behavior

`process.versions.electron` should be non-configurable

### Actual behavior

```js
process.versions.electron = '99.99.99'
```

Code such as the above will override the Electron version which can stop third party modules correctly recognising the Electron version.

### How to reproduce

Run the code above^^

The reason this is an issue is that other versions such as `process.versions.node` can not be configured / changed.
atom/common/node_bindings.cc
std::string new_options = options;
      for (const auto& disallow : disallowed) {
        for (const auto& part : parts) {
          if (part.find(disallow) != std::string::npos) {
            LOG(WARNING) << "The NODE_OPTION" << disallow
                         << "is not supported in Electron";
            new_options.erase(new_options.find(part), part.length());
            break;
          }
        }
      }
      
      if (new_options != options)
        env->SetVar("NODE_OPTIONS", new_options);
    }
  }
  
  
  
  node::Init(&argc, argv, &exec_argc, &exec_argv);
#if defined(OS_WIN)
  
  
  if (browser_env_ == BROWSER || env->HasVar("ELECTRON_DEFAULT_ERROR_MODE"))
    SetErrorMode(GetErrorMode() & ~SEM_NOGPFAULTERRORBOX);
#endif
  g_is_initialized = true;
}
node::Environment* NodeBindings::CreateEnvironment(