<!--
Thanks for opening an issue! A few things to keep in mind:

- The issue tracker is only for bugs and feature requests.
- Before reporting a bug, please try reproducing your issue against
  the latest version of Electron.
- If you need general advice, join our Slack: http://atom-slack.herokuapp.com
-->

* Electron version: 1.6.15
* Operating system: Linux

### Expected behavior

Inside a `BrowserView`, I want to access the [`view.id`](https://github.com/electron/electron/blob/master/docs/api/browser-view.md#viewid-experimental). I would have expected `remote.getCurrentWindow()` to return the `view`.

### Actual behavior

Calling `remote.getCurrentWindow()` returns `null`.

---

I understand if you want to expose a different API here since the method _is_ called <code>getCurrent**Window**()</code>. However, there should be _some_ way to access the `view` from within a `BrowserView` process.
atom/browser/api/atom_api_browser_view.cc
WebContents::Create(isolate, web_preferences);
  web_contents_.Reset(isolate, web_contents.ToV8());
  api_web_contents_ = web_contents.get();
  view_.reset(NativeBrowserView::Create(
      api_web_contents_->managed_web_contents()->GetView()));
  InitWith(isolate, wrapper);
}
BrowserView::~BrowserView() {
  api_web_contents_->DestroyWebContents(true );
}
mate::WrappableBase* BrowserView::New(mate::Arguments* args) {
  if (!Browser::Get()->is_ready()) {
    args->ThrowError("Cannot create BrowserView before app is ready");
    return nullptr;
  }
  if (args->Length() > 1) {
    args->ThrowError("Too many arguments");
    return nullptr;
  }
  mate::Dictionary options;
  if (!(args->Length() == 1 && args->GetNext(&options))) {
    options = mate::Dictionary::CreateEmpty(args->isolate());
  }
  return new BrowserView(args->isolate(), args->GetThis(), options);
}
int32_t BrowserView::ID() const {