Register snapshots
Replace the Tutorial with the Guide.

The Guide isn't 100% perfect, but it's basically complete. It's
certainly better than the tutorial is. Time to start pointing more
people its way.

I also just made it consistent to call all things 'guides' rather than
tutorials.

Fixes #9874. This is the big one.

And two bugs that just go away.

Fixes #14503.
Fixes #15009.
only deprecate the guide rather than :fire: :fire: :fire:
Handle always-unsized structs

closes #16977
Fix bug in padding unicode, #17105.
auto merge of #16657 : steveklabnik/rust/goodbye_tutorial, r=brson

The Guide isn't 100% perfect, but it's basically complete. It's
certainly better than the tutorial is. Time to start pointing more
people its way.

I also just made it consistent to call all things 'guides' rather than
tutorials.

Fixes #9874. This is the big one.

And two bugs that just go away.

Fixes #14503.
Fixes #15009.
auto merge of #17112 : nick29581/rust/unsized-fields, r=nikomatsakis

closes #16977 

r? @nikomatsakis
auto merge of #17145 : ahmedcharles/rust/unicode, r=alexcrichton
New lint : unused_extern_crate. #10385
Removing unused extern crates.
auto merge of #17159 : brson/rust/snaps, r=alexcrichton

This switches win64 hosts to bootstrap from win64 snaps.
Remove largely unused context from Visitor.
Track the visited AST's lifetime throughout Visitor.
auto merge of #17069 : eddyb/rust/visitor, r=pnkfelix

Few visitors used the context passing feature and it can be easily emulated.
The added lifetime threading allows a visitor to keep safe references to AST
nodes it visits, making a non-owning ast_map design possible, for #13316.
auto merge of #17134 : vberger/rust/lint_unused_extern_crate, r=alexcrichton

This PR creates a new lint : ``unused_extern_crate``, which do pretty much the same thing as ``unused_import``, but for ``extern crate`` statements. It is related to feature request #10385.

I adapted the code tracking used imports so that it tracks extern crates usage as well. This was mainly trial and error and while I believe all cases are covered, there might be some code I added that is useless (long compile times didn't give me the opportunity to check this in detail).

Also, I removed some unused ``extern crate`` statements from the libs, that where spotted by this new lint.
libsyntax: Explicit error message for sugared doc comments.

Display an explicit message about items missing after sugared doc
comment attributes. References #2798.