Adds conditional byteswapping intrinsics

These intrinsics are synthesized, so maybe they should be in another
file. But since they are just a single line of code each, based on the
bswap intrinsics and aren't really intended for public consumption (they should be exposed as a
single function / trait) I thought they would fit here.
Implement `map_mut` on the Option type

Closes #7394
Added support for struct-like enum variants in middle::ty::enum_variants().
Make the error messages that result from referencing
nonexistent traits consistent, and add a test.
Address @catamorphism's error message grammar nit.
rustc: improve -Z trans-stats to report per-fn LLVM instruction counts and translation timing
Use #[allow(warnings)] in rusti instead of explicitly listing warnings
Removed drop from the keyword list in the docs
Copy the correct libs when using local-rust-root

This fixes a segfault when configuring rust to use local-rust-root. The
libraries were renamed in the 0.6-0.7 transition, and the script was not copying
them all. I also removed the line referencing libcore (now libstd).
libsyntax: fix infinite loop when recursively including modules

Fixes #7276
Bring compiletest/rustpkg/driver up to date on std vs core
Move `extra::net_*` to `extra::net::*` properly.

Where * = tcp, ip, url.

Formerly, extra::net::* were aliases of extra::net_*, but were the
recommended path to use. Thus, the documentation talked of the `net_*`
modules while everything else was written expecting `net::*`.

This moves the actual modules so that `extra::net::*` is the actual
location of the modules.

This will naturally break any code which used `extra::net_*` directly.
They should be altered to use `extra::net::*` (which has been the
documented way of doing things for some time).

This ensures that there is one, and only one, obvious way of doing
things.
Remove superfluous super::super::
Remove visit_struct_method
Do not rely on newtype enum dereference
vim: Highlight 0i as number
Change spans for sugary call expressions
Fix fallout from span change
Change signature of Iterator.size_hint

Remove the Option wrapper around the lower bound. None is semantically
the same as Size(0), so there's no point in having a distinction.
Implement .size_hint() on the remaining Iterator adaptors

Every iterator adaptor now has an implementation of .size_hint() that
makes sense, except for when the default of (0, None) is correct.