code: func (xft *XFastTrie) init(intType interface{}) {
  	bits := uint8(0)
  	switch intType.(type) {
  	case uint8:
  		bits = 8
  	case uint16:
  		bits = 16
  	case uint32:
  		bits = 32
  	case uint, uint64:
  		bits = 64
  	default:
  		// we'll panic with a bad value to the constructor.
  		panic(`Invalid universe size provided.`)
  	}
  
  	xft.layers = make([]map[uint64]*node, bits)
  	xft.bits = bits
  	xft.diff = 64 - bits
  	for i := uint8(0); i < bits; i++ {
  		xft.layers[i] = make(map[uint64]*node, 50) // we can obviously be more intelligent about this.
  	}
  	xft.num = 0
  	xft.root = newNode(nil, nil)
  }
docs: // init will initialize the XFastTrie with the provided byte-size.
  // I'd prefer generics here, but it is what it is.  We expect uints
  // here when ints would perform just as well, but the public methods
  // on the XFastTrie all expect uint64, so we expect a uint in the
  // constructor for consistency's sake.