func ByteKeySet(theMap interface{}) Byte {
	v := reflect.ValueOf(theMap)
	ret := Byte{}
	for _, keyValue := range v.MapKeys() {
		ret.Insert(keyValue.Interface().(byte))
	}
	return ret
}
ByteKeySet creates a Byte from a keys of a map[byte](? extends interface{}).
If the value passed in is not actually a map, this will panic.
package sets
import (
	"reflect"
	"sort"
)
type Byte map[byte]Empty
func NewByte(items ...byte) Byte {
	ss := Byte{}
	ss.Insert(items...)
	return ss
}