func (t *Rbtree) InsertOrGet(item Item) Item {
	if item == nil {
		return nil
	}
	return t.insert(&Node{t.NIL, t.NIL, t.NIL, RED, item}).Item
}
InsertOrGet inserts or retrieves the item in the tree. If the
item is already in the tree then the return value will be that.
If the item is not in the tree the return value will be the item
you put in.
package rbtree
func (t *Rbtree) Len() uint { return t.count }
func (t *Rbtree) Insert(item Item) {
	if item == nil {
		return
	}
	t.insert(&Node{t.NIL, t.NIL, t.NIL, RED, item})
}