Refactor fingerprint logic out of cargo_rustc
Refactor the parallel job queue to its own module