code: func (c *Client) UpdateEvent(e contract.Event) (err error) {
  	conn := c.Pool.Get()
  	defer conn.Close()
  
  	id := e.ID
  
  	o, err := eventByID(conn, id)
  	if err != nil {
  		if err == redis.ErrNil {
  			return db.ErrNotFound
  		}
  		return err
  	}
  
  	e.Modified = db.MakeTimestamp()
  	err = mergo.Merge(&e, o)
  	if err != nil {
  		return err
  	}
  
  	err = deleteEvent(conn, id)
  	if err != nil {
  		return err
  	}
  
  	_, err = addEvent(conn, e)
  	return err
  }
docs: // Update an event - do NOT update readings
  // UnexpectedError - problem updating in database
  // NotFound - no event with the ID was found