Looking at this in more detail, it looks like this Should be a PrunedSpace, and if we want a PrunedSpace apply method that takes the pruning function?

def apply(fn: (K,V), Timestamp) => Boolean) = new PrunedSpace....