Actually cache the calculated reachable relation

Previously, the closure inside the TaskManager's _reachableBy field did
compute the whole Set (Actor,Task) on every call.

The new benchmark is much more promising: 133.0 ms (compared to 1.816 s previously)

The pull request is just for review, I would recommend to simply fast-forward perfomance-reachable to this commit.