code: func (entries *Entries) insert(entry Entry) Entry {
  	i := entries.search(entry.Key())
  
  	if i == len(*entries) {
  		*entries = append(*entries, entry)
  		return nil
  	}
  
  	if (*entries)[i].Key() == entry.Key() {
  		oldEntry := (*entries)[i]
  		(*entries)[i] = entry
  		return oldEntry
  	}
  
  	(*entries) = append(*entries, nil)
  	copy((*entries)[i+1:], (*entries)[i:])
  	(*entries)[i] = entry
  	return nil
  }
docs: // insert will insert the provided entry into this list of
  // entries.  Returned is an entry if an entry already exists
  // for the provided key.  If nothing is overwritten, Entry
  // will be nil.