code: function login(type, customOptions, successCallback, errorCallback) {
      var successCb = successCallback,
        errorCb = errorCallback;
  
      if(!type){
        throw new TypeError('Credentials (for Evrythng) or type (for Third party) are missing.');
      }
  
      // Authenticate using third parties' OAuth.
      if(Utils.isString(type)){
  
        if(type === 'facebook'){
          return _loginFacebook.call(this, customOptions, successCb, errorCb);
  
        }else if(type === 'evrythng') {
          return _loginEvrythng.call(this, customOptions, successCb, errorCb);
        }
  
        /*TODO: add more authentication methods here.*/
  
      }else{
  
        // Evrythng login does not need first param. Simply call *_loginEvrythng()*
        // with shifted arguments.
        return _loginEvrythng.call(this, type, customOptions, successCb);
  
      }
    }
docs: ``` app.login({ email/id: "userEmailOrId", password: "pass" }); ```