Teach extra::term::Terminal.reset() to handle missing op

Unlike fg() and bg(), we haven't already checked for the presence of
"op" in the terminfo when we call reset(), so we need to handle the case
where it's missing.

Also update the warn!() lines to avoid double-quoting the output.

Fixes #7431.
librustc: Always pass self ByRef.
Add test for #5321.
mk: Make windows installer work with -pre versions
mk: Include all bins in the windows install
auto merge of #7410 : luqmana/rust/bare-self, r=catamorphism

Finally sorted this out. Fixes #5321, #4439, and #4850.
util: make NonCopyable 0 size (instead of 1 byte)

this also adds a derived Eq, TotalEq, Ord and TotalOrd along with
removing the useless constructor
Rename #[no_drop_flag] to #[unsafe_no_drop_flag]
docs: Mention rustpkg in release notes
rustpkg: Update manual
extra: unused import fix for android
std: unused import fix for android
rc: add missing `#[unsafe_no_drop_flag]`

The destructors were updated in d9f6dd263c16a21108c27dbf15a3d59a43a5b490
but this was accidentally left out.
fix stage0 build
add a tutorial on containers and iterators
Update man page
rustpkg: Implement RUST_PATH

Unfortunately, the main test for this is ignored due to #7071.

Closes #5682
Remove useless namegen thunk
auto merge of #7272 : Aatch/rust/namegen_thunk, r=thestinger

This removes the `namegen` thunk that was in `common.rs`. I also take the opportunity to refactor a few uses where we had a `str -> ident -> str` chain that seemed somewhat redundant to me.

Also cleans up some warnings that made their way in already.
auto merge of #7397 : catamorphism/rust/rustpkg_path, r=catamorphism

r? @brson Unfortunately, the main test for this is ignored due to #7071.

Closes #5682