* Electron Version: 3.0.0-beta.1
* Operating System (Platform and Version): macOS 10.13 (but all others seem affected, too)
* Last known working Electron version: 2.0.x

**Expected Behavior**
Spellchecking should work: After calling `webFrame.setSpellCheckProvider` with a given provider, that provider's `spellCheck()` method should be called.

**Actual behavior**
Calling `webFrame.setSpellCheckProvider` seems to have no effect - the provider is simply never called.

**To Reproduce**
Clone the repo below and start the app. The spellcheck provider is configured to log each input word. However, it appears that `spellCheck` is never called.

```sh
git clone https://github.com/felixrieseberg/electron-3-spellcheck
cd electron-3-spellcheck
npm install
npm start || electron .
```


atom/renderer/api/atom_api_spell_check_client.cc
public:
  SpellcheckRequest(const base::string16& text,
                    blink::WebTextCheckingCompletion* completion)
      : text_(text), completion_(completion) {
    DCHECK(completion);
  }
  ~SpellcheckRequest() {}
  base::string16 text() { return text_; }
  blink::WebTextCheckingCompletion* completion() { return completion_; }
 private:
  base::string16 text_;  
  
  blink::WebTextCheckingCompletion* completion_;
  DISALLOW_COPY_AND_ASSIGN(SpellcheckRequest);
};
SpellCheckClient::SpellCheckClient(const std::string& language,