code: function toStringOrUndefined(str) {
      if (str === null || str === undefined) { return undefined; }
      if (validation.isObject(str) || validation.isArray(str)) { return undefined; }
      return ('' + str).length > 0 ? ('' + str) : undefined;
  }
docs: Receives anything and converts it into a string. If it is not possible to be converted
  into a string (null, undefined, array, or object), it gets converted to undefined. Empty
  strings are also converted to undefined.
  
  @param {*} str
  @returns {String|undefined}