moved KVHeapDictionary to its own directory