code: func Abbreviate(str string, maxWidth int) (string, error) {
  	return AbbreviateFull(str, 0, maxWidth)
  }
docs: /*
  Abbreviate abbreviates a string using ellipses. This will turn  the string "Now is the time for all good men" into "Now is the time for..."
  
  Specifically, the algorithm is as follows:
  
      - If str is less than maxWidth characters long, return it.
      - Else abbreviate it to (str[0:maxWidth - 3] + "...").
      - If maxWidth is less than 4, return an illegal argument error.
      - In no case will it return a string of length greater than maxWidth.
  
  Parameters:
      str -  the string to check
      maxWidth - maximum length of result string, must be at least 4
  
  Returns:
      string - abbreviated string
      error - if the width is too small
  */