* Output of `node_modules/.bin/electron --version`:
v3.0.6
v4.0.0-beta.5

* Operating System (Platform and Version):
macOS High Siearra 10.13.6

* Output of `node_modules/.bin/electron --version` on last known working Electron version (if applicable):
v2.0.11

**Expected Behavior**
BrowserWindow.getNativeWindowHandle() must return non-nullable result.

**Actual behavior**
BrowserWindow.getNativeWindowHandle() returns null.

**To Reproduce**

***Sample code***
```
const { app, BrowserWindow } = require('electron');

let win

app
	.on('ready', () => {
		win = new BrowserWindow({width: 800, height: 600})
		win.loadURL('https://www.google.com')
		
		win.on('closed', () => win = null);

		const handle = win.getNativeWindowHandle();
		console.log('Current window: ' + handle.toString('hex'));
	})
	.on('window-all-closed', () => app.quit());
```

***Expected output***
Something different than `Current window: 0000000000000000`

***Actual output***
`Current window: 0000000000000000`
atom/browser/api/atom_api_top_level_window.cc
.SetMethod("unhookAllWindowMessages",
                 &TopLevelWindow::UnhookAllWindowMessages)
      .SetMethod("setThumbnailClip", &TopLevelWindow::SetThumbnailClip)
      .SetMethod("setThumbnailToolTip", &TopLevelWindow::SetThumbnailToolTip)
      .SetMethod("setAppDetails", &TopLevelWindow::SetAppDetails)
#endif
      .SetProperty("id", &TopLevelWindow::GetID);
}
}  
}  
namespace {
using atom::api::TopLevelWindow;
void Initialize(v8::Local<v8::Object> exports,
                v8::Local<v8::Value> unused,
                v8::Local<v8::Context> context,
                void* priv) {
  v8::Isolate* isolate = context->GetIsolate();
  TopLevelWindow::SetConstructor(isolate, base::Bind(&TopLevelWindow::New));
  mate::Dictionary constructor(
      isolate, TopLevelWindow::GetConstructor(isolate)->GetFunction());
  constructor.SetMethod("fromId",
                        &mate::TrackableObject<TopLevelWindow>::FromWeakMapID);
  constructor.SetMethod("getAllWindows",
                        &mate::TrackableObject<TopLevelWindow>::GetAll);
  mate::Dictionary dict(isolate, exports);
  dict.Set("TopLevelWindow", constructor);
}
}  
NODE_BUILTIN_MODULE_CONTEXT_AWARE(atom_browser_top_level_window, Initialize)