* 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/renderer/atom_sandboxed_renderer_client.cc
base::FilePath path;
  base::PathService::Get(base::FILE_EXE, &path);
  return path.value();
}
v8::Local<v8::Value> CreatePreloadScript(v8::Isolate* isolate,
                                         v8::Local<v8::String> preloadSrc) {
  auto script = v8::Script::Compile(preloadSrc);
  auto func = script->Run();
  return func;
}
class AtomSandboxedRenderFrameObserver : public AtomRenderFrameObserver {
 public:
  AtomSandboxedRenderFrameObserver(content::RenderFrame* render_frame,
                                   AtomSandboxedRendererClient* renderer_client)
      : AtomRenderFrameObserver(render_frame, renderer_client),
        renderer_client_(renderer_client) {}
 protected:
  void EmitIPCEvent(blink::WebLocalFrame* frame,