tutorial: Repair broken links
tutorial: Fix obsolete names
tutorial: Remove the sentence about mutable fields.
Compare file:line prefix case-insensitively on win32
Paths are case insensitive on windows and rustc and compiletest may disagree on casing.
Fixes test compile-fail/circular_modules_main
rustpkg: Clean up usage messages for install
rustpkg: Handle non-numeric versions; some cleanup

Package IDs can now be of the form a/b/c#FOO, where (if a/b/c is
a git repository) FOO is any tag in the repository. Non-numeric
tags only match against package IDs with the same tag, and aren't
compared linearly like numeric versions.

While I was at it, refactored the code that calls `git clone`,
and segregated build output properly for different packages.
Warn about unused RUST_LOG specs
rustpkg: Don't assume a non-numeric refspec is a tag

Just pass it directly to git, without prefixing it with tags/
docs: Talk about tags that aren't versions in the "Package identifiers" section
Change concurrency primitives to standard naming conventions

To be more specific:

`UPPERCASETYPE` was changed to `UppercaseType`
`type_new` was changed to `Type::new`
`type_function(value)` was changed to `value.method()`
Fix nits.
auto merge of #7978 : sstewartgallus/rust/rename_arc, r=bblum

To be more specific:

`UPPERCASETYPE` was changed to `UppercaseType`
`type_new` was changed to `Type::new`
`type_function(value)` was changed to `value.method()`
cleanup get_ref
cleanup .iter and .iter_err
cleanup .unwrap and .unwrap_err fixing io tests
cleanup .chain and .chain_err + fixing other files
cleanup .get and .get_err
cleanup .map and .map_err
to_either + fixes
std: fix the casing of option::{Some,None} in the docs