That way, whenever rust-snapshot-hash changes, mach will look for
the Rust snapshot in a different directory and re-boostrap as needed.
However, older rust version will be left behind never cleaned up.
This is good for git-bisect, but not for disk space:
the current snapshot is 618 MB.
In the future, we may want `mach clean` or some other comment
to remove unused Rust snapshots.
CC #3388
Dumb terminals can only interpret a limited number of control codes,
and rewriting the terminal buffer will make `./mach build` very talkative
on these terminals.
This can be tested by setting the environment variable TERM to "dumb"
as such:
TERM=dumb ./mach build