It's just less tedious, and we're GCC/LLVM specific anyways.
Previously, I've observed bugs where we either: 1) Exit too early, leaving undownloaded objects 2) Hang while downloading This rewrite hopefully fixes both.