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
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`.
testsuite: Un-xfail unit-like-struct-drop-run on Windows

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

Closes #7999