message: Update to use idiomatic Rust error handling
  headspace was in go lang with using "" for handling errors :P
diff: @@ -16,15 +16,15 @@ pub fn whoami(user: &GlobalUser) -> Result<(), failure::Error> {
  format!("a Global API Key, associated with the email '{}'", email,)
  }
  GlobalUser::TokenAuth { .. } => {
  - let token_auth_email: String = fetch_api_token_email(user)?;
  + let token_auth_email = fetch_api_token_email(user)?;
  - if token_auth_email == "" {
  - "an API Token".to_string()
  - } else {
  + if let Some(token_auth_email) = token_auth_email {
  format!(
  "an API Token, associated with the email '{}'",
  token_auth_email,
  )
  + } else {
  + "an API Token".to_string()
  }
  }
  };
  @@ -36,20 +36,18 @@ pub fn whoami(user: &GlobalUser) -> Result<(), failure::Error> {
  Ok(())
  }
  -fn fetch_api_token_email(user: &GlobalUser) -> Result<String, failure::Error> {
  +fn fetch_api_token_email(user: &GlobalUser) -> Result<Option<String>, failure::Error> {
  let client = http::cf_v4_client(user)?;
  let response = client.request(&GetUserDetails {});
  match response {
  - Ok(res) => Ok(res.result.email),
  + Ok(res) => Ok(Some(res.result.email)),
  Err(e) => match e {
  ApiFailure::Error(_, api_errors) => {
  let error = &api_errors.errors[0];
  if error.code == 9109 {
  - message::info("Your token is missing the 'User Details: Read' permission.\n\nPlease generate and auth with a new token that has these perms to be able to identify this token.\n");
  - Ok("".to_string())
  - } else {
  - Ok("".to_string())
  + message::billboard("Your token is missing the 'User Details: Read' permission.\n\nPlease generate and auth with a new token that has these perms to be able to identify this token.\n");
  }
  + Ok(None)
  }
  ApiFailure::Invalid(_) => failure::bail!(http::format_error(e, None)),
  },
  @@ -72,7 +70,7 @@ fn format_accounts(user: &GlobalUser, accounts: Vec<Account>) -> Table {
  if let GlobalUser::TokenAuth { .. } = user {
  if accounts.is_empty() {
  - message::info("Your token is missing the 'Account Settings: Read' permission.\n\nPlease generate and auth with a new token that has these perms to be able to list your accounts.\n");
  + message::billboard("Your token is missing the 'Account Settings: Read' permission.\n\nPlease generate and auth with a new token that has these perms to be able to list your accounts.");
  }
  }
  