implement invalidating dependency cache
allow to add a number of reps in a single method call; rename CacheManager.invalidIds => CacheManager.dirtyIds
add basic tests for dep cache
don't introduce flatDeps field on Observables; simplify the code