std: Remove ThreadPerCore spawn mode. Unused
Refactored int/uint range code in preparation for change to range_rev semantics.

Also added unit tests of range code to test refactoring.  The
num-range-rev.rs test will need to be updated when the range_rev
semantics change.
Switch over to new range_rev semantics; fix #5270.
Fix #5270: another test I did not update properly.
rustc compiler config for Vim.

Note that this is not actually *used* by default; it is a matter of
configuration still, because you might want to:

- Compile all .rs files with `rustc %` (where each can be built itself)

- Compile all .rs files with `rustc some-file.rs` (where you are editing
  part of a crate)

- Compile with a different tool, such as `make`. (In this case you might
  put a `~/.vim/after/compiler/rustc.vim` to match such cases, set
  makeprg and extend errorformat as appropriate. That should probably go
  in a different compiler mode, e.g. make-rustc.)

To try using it, `:compiler rustc`. Then, `:make` on a file you would
run `rustc` on will work its magic, invoking rustc. To automate this,
you could have something like `autocmd FileType rust compiler rustc` in
your Vim config.
Install librustllvm.so to target lib directory
auto merge of #7795 : sp3d/rust/master, r=z0w0

This should be pretty self-explanatory. The most important component is region/lifetime annotation highlighting, as previously they were interpreted as character literals and would ruin the rest of the line. The attribute regex is fairly crude, but it gets the job done and there's not much within attributes that would benefit from individual highlighting, so fancier handling didn't seem worth the trouble.

The ident regex was copied from the vim highlighter.
auto merge of #7796 : thomaslee/rust/issue-6247, r=z0w0

This closes #6247 by simply ensuring librustllvm.so gets installed to the target lib directory in addition to the host lib directory.
cmp: Use default methods in trait Eq, require only Eq::eq
auto merge of #7799 : blake2-ppc/rust/eq-default, r=sanxiyn

Let Eq::ne be implemented to the inverse of eq by default.
testsuite: Add xfailed test case for #6128
auto merge of #7802 : catamorphism/rust/issue-6128, r=catamorphism
rustpkg: Handle local git repositories

rustpkg can now build code from a local git repository. In the
case where the local repo is in a directory not in the RUST_PATH,
it checks out the repository into a directory in the first workspace
in the RUST_PATH.

The tests no longer try to connect to github.com, which should
solve some of the sporadic failures we've been seeing.
auto merge of #7681 : catamorphism/rust/rustpkg-local-repos, r=catamorphism

r? @graydon rustpkg can now build code from a local git repository. In the
case where the local repo is in a directory not in the RUST_PATH,
it checks out the repository into a directory in the first workspace
in the RUST_PATH.

The tests no longer try to connect to github.com, which should
solve some of the sporadic failures we've been seeing.
std: add consuming iterators for `HashMap` and `HashSet`
auto merge of #7806 : apasel422/rust/hash_consume, r=catamorphism

This partially addresses #7719.
ringbuf: Implement DoubleEndedIterator
auto merge of #7808 : blake2-ppc/rust/ringbuf, r=thestinger
hashmap: Remove .mutate_values() which is replaced by .mut_iter()
hashmap: Iterators for hashset diff, sym. diff, intersec, union

Implement the difference, union, etc iterators with the help of a custom
iterator combinator with explicit closure environment. Reported issue #7814
to be able to use the std::iterator filter combinator.