This changes how cargo packages are handled during manifest creation. Before building manifests it downloads all tarballs to the local equivalent of dist/, where it will be signed and uploaded by buildbot, both to dist/ and to the archives.
It encodes the static.rust-lang.org archive urls into the manifest.
Because all cargo bins are called 'cargo-nightly', and all three rust channels have to coexist, it renames the cargo tarballs on beta and stable per the existing rust naming conventions, so on beta, it's cargo-beta, and on stable it's e.g. cargo-0.17.0.
I have tested in dev, but not end-to-end. I've seen it run and build a manifest that looks correct, but haven't seen buildbot actually do the build, run the script, upload everything, and rustup continue to work. I'll start that build now and hopefully be able to test rustup in dev tomorrow.