Switch to using per-source psq_run_tool_on_source as opposed to PRE_LINK commands

This allows better progress tracking and parallelization