Make caching work:

* gkvlite requires store.Flush() to be called for values to be
  persistent
* Use os.OpenFile instead of os.Create so we don't keep overwriting the
  cache.