Add defun motions for rust-mode.

Specifically, we can now use:
+ beginning-of-defun
+ end-of-defun
+ mark-defun

where "defun" means a Rust item.

+ Add tests in rust-mode-tests.el
+ Fix indentation in rust-mode-tests.el
+ Add support for trait to Imenu
Add missing .com
Register new snapshots

Makes the `dead_code` lint a citizen of stage0 to silence the "unknown lint"
warnings.
auto merge of #10873 : pradeep90/rust/rust-mode-changes, r=pcwalton

Specifically, we can now use:
+ beginning-of-defun
+ end-of-defun
+ mark-defun

where "defun" means a Rust item.

+ Add tests in rust-mode-tests.el
+ Fix indentation in rust-mode-tests.el
+ Add support for trait to Imenu
Add some more commentary to FFI tutorial.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Check the privacy of implemented traits

This bug showed up because the visitor only visited the path of the implemented
trait via walk_path (with no corresponding visit_path function). I have modified
the visitor to use visit_path (which is now overridable), and the privacy
visitor overrides this function and now properly checks for the privacy of all
paths.

Closes #10857
auto merge of #10862 : alexcrichton/rust/issue-10857, r=huonw

This bug showed up because the visitor only visited the path of the implemented
trait via walk_path (with no corresponding visit_path function). I have modified
the visitor to use visit_path (which is now overridable), and the privacy
visitor overrides this function and now properly checks for the privacy of all
paths.

Closes #10857
auto merge of #10822 : ezyang/rust/master, r=huonw

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Explain potentially confusing string example.

Reported be @ElBaha
Fix span.
Note that Rust can be embedded.
Add a link to the wiki's package list and refer to git
Fix grammar error.
auto merge of #10882 : jhasse/rust/patch-1, r=metajack

typo
Add rustdoc documentation.
Fix tiny formatting error.
Clarify that strings aren't magical.
Clarify `as`, mention transmute.
Fix tiny formatting error.
Macro definition is feature gated.