code: func Initials(str string, delimiters ...rune) string {
  	if str == "" {
  		return str
  	}
  	if delimiters != nil && len(delimiters) == 0 {
  		return ""
  	}
  	strLen := len(str)
  	var buf bytes.Buffer
  	lastWasGap := true
  	for i := 0; i < strLen; i++ {
  		ch := rune(str[i])
  
  		if isDelimiter(ch, delimiters...) {
  			lastWasGap = true
  		} else if lastWasGap {
  			buf.WriteRune(ch)
  			lastWasGap = false
  		}
  	}
  	return buf.String()
  }
docs: /*
  Initials extracts the initial letters from each word in the string. The first letter of the string and all first
  letters after the defined delimiters are returned as a new string. Their case is not changed. If the delimiters
  parameter is excluded, then Whitespace is used. Whitespace is defined by unicode.IsSpacea(char). An empty delimiter array returns an empty string.
  
  Parameters:
      str - the string to get initials from
      delimiters - set of characters to determine words, exclusion of this parameter means whitespace would be delimeter
  Returns:
      string of initial letters
  */