Document std::ops.

Added an overview with a 'real' example, as well as toy implementations of all of
the traits.

Closes #9356.
Fix single-line-style paragraph fills with code immediately before or after
rustc: Convert lang_items hashmap to use &'static str keys
rustc: Convert lang_item to use an iterator
std::rt::uv::net: Enable tests on Win32

Closes #8815.
reduce heap allocations for MemoryMap
auto merge of #9614 : blake2-ppc/rust/lang-item-iter, r=alexcrichton

Cleanup in middle::lang_items

Use static string keys in the lang item hashmap, and convert
the traversal function to be an iterator.
auto merge of #9616 : klutzy/rust/win32-uv-test, r=huonw

Closes #8815.
auto merge of #9619 : toffaletti/rust/mmap, r=huonw
Expand tidy to prevent binaries from being checked

Closes #9621
trans: Change @ast::Expr -> &ast::Expr where possible
trans: Change @ast::Pat and @mut CrateContext in a few places

Use borrowed references in a few locations that were encountered when
working on other changes.
trans::build: Change @mut Block to &Block or &mut Block

Use &mut Block and &Block references where possible in the builder
functions in trans::build.

@mut Block remains in a few functions where I could not (not yet at
least) track down the runtime borrowck failures.
auto merge of #9630 : blake2-ppc/rust/de-at-smaller, r=huonw

This is mostly an incremental change, picking off some uses of
@- or @mut-pointers that can be replaced by references.

Almost all of the builder functions in trans::build are updated,
mostly using `&Block` arguments instead of `@mut Block`.
rustdoc: Generate valid code for struct-variants

Closes #9587
testsuite: Un-xfail unit-like-struct-drop-run on Windows

Closes #7999
auto merge of #9635 : catamorphism/rust/issue-7999, r=catamorphism

Closes #7999
auto merge of #9628 : alexcrichton/rust/tidy-binaries, r=thestinger

Closes #9621
rm only use of type_is_immediate outside of trans
Add new lint: non_uppercase_pattern_statics, for #7526.

This tries to warn about code like:
    ```rust
    match (0,0) {
        (0, aha) => { ... },
        ...
    }
    ```
where `aha` is actually a static constant, not a binding.