tutorial: Missing tildes around .notrust block

Adds a missing tilde to the end and the start of two .notrust blocks.
Rename a few typeck method-related structures to UpperCamelCase.
Replace callee_id with information stored in method_map.
auto merge of #12571 : eddyb/rust/kill-callee-id, r=nikomatsakis

Every method call and overloaded operator had a `callee_id` that was be used to store the method type and type substitutions, that information is now stored in the `method_map`, alongside the method's origin.
auto merge of #12570 : kyrias/rust/master, r=cmr

Adds a missing tilde to the end and the start of two .notrust blocks.
rustc: Explicitly mention type params with missing `'static` bounds

Also renames `check_durable` to `check_static` and removes the outdated
comment.
auto merge of #12490 : zslayton/rust/doc-fix-12386, r=alexcrichton

Attn: @huonw 

Addresses #12386.
auto merge of #12572 : lifthrasiir/rust/owned-ptr-static-bound, r=alexcrichton

This is inspired by the [question](http://www.reddit.com/r/rust/comments/1yy57k/unsolved_question_from_irc/) (re-)posted to /r/rust. The error message in this question correctly states that one should add `'static` to the trait bounds, but does not state which trait bounds. This PR makes that explicit by appending two words.

This also renames `check_durable` to `check_static` and removes the outdated comment as a cleanup.
rustc: Get rustc compiling with LLVM 3.{3,4} again

The travis builds have been breaking recently because LLVM 3.5 upstream is
changing. This looks like it's likely to continue, so it would be more useful
for us if we could lock ourselves to a system LLVM version that is not changing.

This commit has the support to bring our C++ glue to LLVM back in line with what
was possible back in LLVM 3.{3,4}. I don't think we're going to be able to
reasonably protect against regressions in the future, but this kind of code is a
good sign that we can continue to use the system LLVM for simple-ish things.
Codegen for ARM won't work and it won't have some of the perf improvements we
have, but using the system LLVM should work well enough for development.
travis: Use LLVM 3.3 from the official repos

We can be certain that this version of LLVM will not be changing, so we don't
have to worry about API drift over time.
rustc: Don't deduplicate libraries linked to

Linker argument order with respect to libraries is important enough that we
shouldn't be attempting to filter out libraries getting passed through to the
linker. When linking with a native library that has multiple dependant native
libraries, it's useful to have control over the link argument order.
Fix a pretty printer crash on `/***`.

The pretty printer was treating block comments with more than two
asterisks after the first slash (e.g. `/***`) as doc comments (which are
attributes), whereas in actual fact they are just regular comments.
auto merge of #12586 : chris-morgan/rust/fix-pretty-print-slash-star-star-star-crash, r=alexcrichton

The pretty printer was treating block comments with more than two
asterisks after the first slash (e.g. `/***`) as doc comments (which are
attributes), whereas in actual fact they are just regular comments.
auto merge of #12486 : MicahChalmer/rust/emacs-fixes-round-3, r=brson

I've added details in the description of each comment as to what it does, which I won't redundantly repeat here in the PR.  They all relate to indentation in the emacs rust-mode.

What I will note here is that this closes #8787.  It addresses the last remaining case (not in the original issue description but in a comment), of indenting `match` statements.  With the changes here, I believe every problem described in the issue description or comments of #8787 is addressed.
auto merge of #12581 : alexcrichton/rust/older-llvm, r=brson

In doing so, revert travis to not using a 3.5 build because it seems to be changing enough that it's breaking our C++ glue frequently enough.
Remove unused type_is_pod function
Implement `has_dtor` method in TypeContents
Keep track of Enum's with destructors
Forbid moves out of static items Closes #10577
Replaced @List with ~List in Rust's recursive example