func New(threadSafe ...bool) Set {
	if len(threadSafe) >= 1 && threadSafe[0] {
		return newThreadSafeSet()
	}
	return newSimpleSet()
}
New returns a new Set that is thread safe if the optional threadSafe parameter is set to true.
package set
type Set interface {
	Add(element interface{}) bool
	Delete(element interface{}) bool
	Has(element interface{}) bool
	ForEach(callback func(element interface{}))
	Clear()
	Size() int
}