code: func (c *ExpirationCache) Add(obj interface{}) error {
  	key, err := c.keyFunc(obj)
  	if err != nil {
  		return KeyError{obj, err}
  	}
  	c.cacheStorage.Add(key, &timestampedEntry{obj, c.clock.Now()})
  	return nil
  }
docs: // Add timestamps an item and inserts it into the cache, overwriting entries
  // that might exist under the same key.