Simple, linear implementation of a store finder for allocation decisions

Store now tracks gossip keys of store capacity, and scans the capacity gossip
for attribute matches when they need to make allocation decisions. A simple,
linear implementation that has a straightforward way to implement garbage
collection of capacity keys, but faster methods can be employed later. It
is likely sufficient as long as it is sufficient for all stores to gossip
capacity, but will need to be reevaluated when capacity is gossiped through
groups.