* 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
#include "content/public/common/content_paths.h"
#include "electron/buildflags/buildflags.h"
#include "native_mate/dictionary.h"
#include "atom/common/node_includes.h"
#define ELECTRON_BUILTIN_MODULES(V)          \
  V(atom_browser_app)                        \
  V(atom_browser_auto_updater)               \
  V(atom_browser_browser_view)               \
  V(atom_browser_content_tracing)            \
  V(atom_browser_debugger)                   \
  V(atom_browser_dialog)                     \
  V(atom_browser_download_item)              \
  V(atom_browser_event)                      \
  V(atom_browser_global_shortcut)            \
  V(atom_browser_in_app_purchase)            \
  V(atom_browser_menu)                       \
  V(atom_browser_net)                        \
  V(atom_browser_power_monitor)              \
  V(atom_browser_power_save_blocker)         \
  V(atom_browser_protocol)                   \
  V(atom_browser_render_process_preferences) \
  V(atom_browser_session)                    \
  V(atom_browser_system_preferences)         \
  V(atom_browser_top_level_window)           \
  V(atom_browser_tray)                       \
  V(atom_browser_web_contents)               \
  V(atom_browser_web_contents_view)          \
  V(atom_browser_view)                       \
  V(atom_browser_web_view_manager)           \
  V(atom_browser_window)                     \