authenticate(provider, options) {
    this._assertToriiIsPresent();

    return this.get('torii')
      .open(provider, options || {})
      .then(data => {
        this._authenticateWithProvider(provider, data);
        return data;
      });
  }
Authenticates the session by opening the specified torii provider. For more
    documentation on torii and its providers abstraction, see the
    [project's README]( https://github.com/adopted-ember-addons/torii), specifically
    the
    [section on providers](https://github.com/adopted-ember-addons/torii).

    @memberof ToriiAuthenticator
    @method authenticate
    @param {String} provider The torii provider to authenticate the session with
    @param {Object} options The options to pass to the torii provider
    @return {Promise} A promise that when it resolves results in the session becoming authenticated
    @public