The problem I guess isn't so much 'pathfinding' as dealing with interruptions along the path. As it is, if there is a worker in the way, a route will be cancelled, and sometimes the same happens for other nonsensical reasons. I don't really trust the pathfinding to do a sufficiently efficient job. If there are too many benefits lost through this (in terms of efficiency), then people won't like it.