* Electron version: 1.6.0, does _not_ repro in 1.4.x
* Operating system: Win32 tested, others possible

It appears that even if you create a window with `focusable: false` and `show: false`, calling `loadURL` on it will cause it to accept window focus and for other windows to lose focus.

### How to reproduce

Open the default Electron app

```js
BW = require('electron').remote.BrowserWindow
let ourWindow = BW.getFocusedWindow()
ourWindow.on('blur', () => console.log("Lost it!"))

hidden = new BW({show: false, width: 500, height: 500, focusable: false})
hidden.loadURL("http://www.yahoo.com")

>>> "Lost it!"
```

This breaks anyone using background windows for computation such as VS Code and Slack (via electron-remote), because whenever a background task kicks off, users can't type anymore
atom/browser/native_window_views.cc
params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW;
  
  
  if (transparent() && !has_frame())
    params.shadow_type = views::Widget::InitParams::SHADOW_TYPE_NONE;
  bool focusable;
  if (options.Get(options::kFocusable, &focusable) && !focusable)
    params.activatable = views::Widget::InitParams::ACTIVATABLE_NO;
#if defined(OS_WIN)
  if (parent)
    params.parent = parent->GetNativeWindow();
  params.native_widget =
      new views::DesktopNativeWidgetAura(window_.get());
  atom_desktop_window_tree_host_win_ = new AtomDesktopWindowTreeHostWin(
      this,
      window_.get(),
      static_cast<views::DesktopNativeWidgetAura*>(params.native_widget));
  params.desktop_window_tree_host = atom_desktop_window_tree_host_win_;
#elif defined(USE_X11)
  std::string name = Browser::Get()->GetName();
  
  params.wm_role_name = "browser-window";
  
  params.wm_class_name = base::ToLowerASCII(name);
  params.wm_class_class = name;
#endif
  window_->Init(params);
  bool fullscreen = false;
  options.Get(options::kFullscreen, &fullscreen);
  std::string window_type;