Add PointerKind to LpDeref
Prohibit assignment to `&mut` pointers that are found in frozen or borrowed locations.

Fixes #8625.
Make rekillable consistent with unkillable

As for now, rekillable is an unsafe function, instead, it should behave
just like unkillable by encapsulating unsafe code within an unsafe
block.

This patch does that and removes unsafe blocks that were encapsulating
rekillable calls throughout rust's libs.

Fixes #8232
Testing rekillable fails when called from outside an unkillable block
rustpkg: Implement --version command-line option

Now, rustpkg --version does something useful!
Don't make the runtime exit on illegal calls
Decrement unkillable counter before failing
Fix valgrind suppression on mac

This callstack changed when the FFI did. I am still a little frightened by
this suppression.
std: Make vec::from_elem failure-safe
Rewrote module tutorial
Rebased and replaced yield with deschedule
auto merge of #8773 : catamorphism/rust/rustpkg-version-flag, r=anasazi

r? anyone. Now, rustpkg --version does something useful!
Rename UnsafeAtomicRcBox to UnsafeArc. Fixes #7674.
fix typo in rust-mode.el
auto merge of #8779 : brson/rust/macsupp, r=thestinger

This callstack changed when the FFI did. I am still a little frightened by
this suppression.

cc #8253
std: use ArcData rather than c_void in UnsafeArc.

This means that fewer `transmute`s are required, so there is less
chance of a `transmute` not having the corresponding `forget`
(possibly leading to use-after-free, etc).
auto merge of #8780 : brson/rust/from_elem, r=thestinger
librustpkg/tests.rs: cleanup unused import
auto merge of #8777 : Kimundi/rust/doc_stuff, r=cmr
auto merge of #8789 : pnkfelix/rust/fsk-fix-typo-in-rust-mode.el, r=pnkfelix

Fix #6887.  (or rather, a bug injected by my prior commit for fixing that bug.)