cache deps
add "combo" perf case
optimize finding independent flushables by rotating the array on non-match. also remove unused var
smarter and simpler dep caching