whole_func_string: function Hint(status, message, start, end, predictions) {
      this.status = status;
      this.message = message;
  
      if (typeof start === 'number') {
          this.start = start;
          this.end = end;
          this.predictions = predictions;
      }
      else {
          var arg = start;
          this.start = arg.start;
          this.end = arg.end;
          this.predictions = arg.predictions;
      }
  }
func_code_string: function Hint(status, message, start, end, predictions) {
      this.status = status;
      this.message = message;
  
      if (typeof start === 'number') {
          this.start = start;
          this.end = end;
          this.predictions = predictions;
      }
      else {
          var arg = start;
          this.start = arg.start;
          this.end = arg.end;
          this.predictions = arg.predictions;
      }
  }
func_documentation_string: The information required to tell the user there is a problem with their
  input.
  TODO: There a several places where {start,end} crop up. Perhaps we should
  have a Cursor object.