Stop using @ExtCtxt
Remove unecessary extern "Rust" specifiers
Stop passing duplicate parameters in expand
Add method .as_mut_slice() to MutableVector

This method is primarily intended to allow for converting a [T, ..N] to
a &mut [T].
Rename pkgid variables
Rename PkgId to CrateId
Rename uses of PkgId to CrateId in librustpkg
Update Docs to use crateid
rustdoc: only filter lines starting with '# ' from the shown code.

Currently any line starting with `#` is filtered from the output,
including line like `#[deriving]`; this patch makes it so lines are only
filtered when followed by a space similar to the current behaviour of
the tutorial/manual tester.
rustdoc: Unify the handling of the hidden example lines.
Make ast_fold take &mut self
Start passing around &mut ExtCtxt
Remove @muts from ExtCtxt
auto merge of #11168 : sfackler/rust/de-at-extctxt, r=alexcrichton

* Pass `&ExtCtxt` instead of `@ExtCtxt`.
* Stop passing duplicate parameters around in `expand`.
* Make `ast_fold` methods take `&mut self`.

After these, it should be possible to remove the `@mut` boxes from `ExtCtxt` altogether, though #11167 is doing some of that so I'm holding off on that for now. This will probably conflict with that PR, so I'm guessing that one will have to be rebased on top of the other.

r? @pcwalton
auto merge of #10885 : kballard/rust/as_mut_slice, r=cmr

This method is primarily intended to allow for converting a [T, ..N] to
a &mut [T].
auto merge of #11169 : alexcrichton/rust/snapshots, r=sanxiyn

Hurray trait coercion!
auto merge of #11182 : luisbg/rust/crateid, r=cmr

Issue #11048
auto merge of #11185 : huonw/rust/doc-ignore, r=cmr

Currently any line starting with `#` is filtered from the output,
including line like `#[deriving]`; this patch makes it so lines are only
filtered when followed by a space similar to the current behaviour of
the tutorial/manual tester.
Remove std::{either, util::Void}