Ok makes sense. I can see the goal for having this trait as a kind of factory class -- enabling a store to produce a queryable version of itself.

(Was just wondering if there is a way to avoid a layer of indirection here if we thought of a queryable store as a ReadableStore that represents a map from Query to Seq[V]. But I guess there's no good way to achieve the above goal if we go down this path.)

Alternatively, can there be a combinator for this?
```scala
class QueryableStore[Q, K, V](store: ReadableStore[K, V])
  extends ReadableStore[Q, Seq[V])
```

Sorry, just trying to be useful :)