Document a few undocumented modules in libstd

Hopefull this will make our libstd docs appear a little more "full".
clarify vector stub in the container tutorial

This also renames the section, as managed vectors cannot be resized
(since it would invalidate the other references).
doc: Update container tutorial with new names of methods and macros

`deque` -> `ringbuf`, mention `extra::dlist`.

fix reference to vector method `bsearch`. Also convert all output
in example code to use `print!`/`println!`
Replace unreachable() calls with unreachable!().

This is the second of two parts of #8991, now possible as a new snapshot
has been made. (The first part implemented the unreachable!() macro; it
was #8992, 6b7b8f2682.)

``std::util::unreachable()`` is removed summarily; any code which used
it should now use the ``unreachable!()`` macro.

Closes #9312.

Closes #8991.
doc: Fix the tutorial's link to rustpkg docs
rustpkg: Register correct dependencies for built and installed files

as per #9112

Closes #9112
Rename the NaN and is_NaN methods to lowercase.

This is for consistency in naming conventions.

- ``std::num::Float::NaN()`` is changed to ``nan()``;
- ``std::num::Float.is_NaN()`` is changed to ``is_nan()``; and
- ``std::num::strconv::NumStrConv::NaN()`` is changed to ``nan()``.

Fixes #9319.
optimized trans_to_datum::auto_borrow_obj code generation in case some trivial cases where simple copying can be applied
minor Type::opaque_trait code cleanup
will not copy trait_callee on stack if it's source expr is a plain borrowed ref
lexer: show correct span on lexical errors

Previously, the lexer calling `rdr.fatal(...)` would report the span of
the last complete token, instead of a span within the erroneous token
(besides one span fixed in 1ac90bb).

This commit adds a wrapper around `rdr.fatal(...)` that sets the span
explicilty, so that all fatal errors in `libsyntax/parse/lexer.rs` now
report the offending code more precisely. A number of tests try to
verify that, though the `compile-fail` testing setup can only check that
the spans are on the right lines, and the "unterminated string/block
comment" errors can't have the line marked at all, so that's incomplete.

Closes #9149.
lexer: report problematic chars verbatim or as escape sequence

... instead of giving their numeric codepoint, following the lead of
fdaae34. So the error message for, say, '\_' mentions _ instead of 95,
and '\●' now mentions \u25cf.
Fix broken tutorial link
Clarify that snapshots are automatically retrieved.
Removed future's destructor

It was only there to prevent Future from being copyable, but it's
noncopyable anyways since it contains a ~fn.
pacified test/run-pass/core-run-destroy on Win7x64
Fix usage for rustpkg init

When I took out the ability to make a new project by name, I forgot to
update the usage to reflect the changes.
Update rustpkg manpage to add init.

I didn't update the manpage when I added the init command. Whoops.
lexer: further slight improvements to lexer errors
Modernize extra::future API