* Electron Version: 3.0.0-beta.1
* Operating System (Platform and Version): macOS 10.13.5
* Last known working Electron version: 2.0.3

**Expected Behavior**
Dev tools extension tabs should appear after being added with the `BrowserWindow.addDevToolsExtension` API. I specifically tested the React and Redux extensions. I can tell the React extension is getting installed but not being shown because the usual
> Download the React DevTools for a better development experience

warning is absent.

**Actual behavior**
Dev tools extension tabs do not appear.

**To Reproduce**
Manually obtain the extension paths following the instructions here:
https://electronjs.org/docs/tutorial/devtools-extension
and supply them to `addDevToolsExtensions`.

Alternately, use [electron-devtools-installer](https://github.com/MarshallOfSound/electron-devtools-installer), which I have a repro case for using just Redux here:
https://github.com/ajmacd/electron-quick-start-typescript

Working with 2.0.3:
```sh
$ git clone https://github.com/ajmacd/electron-quick-start-typescript -b 2.0.3-devtools-working 
$ cd electron-quick-start-typescript
$ npm install
$ npm start
```

Not working with 3.0.0-beta.1:
```sh
$ git checkout 3.0.0-beta.1-devtools-not-working
$ npm install
$ npm start
```
brightray/browser/inspectable_web_contents_impl.cc
content::DevToolsAgentHost* agent_host,
    const std::string& message) {
  if (!frontend_loaded_)
    return;
  if (message.length() < kMaxMessageChunkSize) {
    base::string16 javascript =
        base::UTF8ToUTF16("DevToolsAPI.dispatchMessage(" + message + ");");
    GetDevToolsWebContents()->GetMainFrame()->ExecuteJavaScript(javascript);
    return;
  }
  base::Value total_size(static_cast<int>(message.length()));
  for (size_t pos = 0; pos < message.length(); pos += kMaxMessageChunkSize) {
    base::Value message_value(message.substr(pos, kMaxMessageChunkSize));
    CallClientFunction("DevToolsAPI.dispatchMessageChunk", &message_value,
                       pos ? nullptr : &total_size, nullptr);
  }
}
void InspectableWebContentsImpl::AgentHostClosed(
    content::DevToolsAgentHost* agent_host) {}
void InspectableWebContentsImpl::RenderFrameHostChanged(
    content::RenderFrameHost* old_host,
    content::RenderFrameHost* new_host) {
  if (new_host->GetParent())
    return;
  frontend_host_.reset(content::DevToolsFrontendHost::Create(
      new_host,
      base::Bind(&InspectableWebContentsImpl::HandleMessageFromDevToolsFrontend,
                 weak_factory_.GetWeakPtr())));
}
void InspectableWebContentsImpl::WebContentsDestroyed() {