code: func (s *Store) Upsert(key interface{}, data interface{}) error {
  	return s.Bolt().Update(func(tx *bolt.Tx) error {
  		return s.TxUpsert(tx, key, data)
  	})
  }
docs: // Upsert inserts the record into the bolthold if it doesn't exist.  If it does already exist, then it updates
  // the existing record