Include import name in import shadowing error messages.

This partially alleviates the confusing behavior in issue #16597
Update compile-fail tests due to changed diagnostics
Add compile-fail test for missing import shadowing case
doc: add missing word
doc: use the more convenient 'cargo run' command

This lovely command has already been introduced, so let's take advantage
of it.
doc: slight consistency fix

Others in this list are Capitalized, so do it here too.
Replace mention of ~T by Box<T> in the FFI guide.
Added a note for usage of abs with ::MIN.
Fix sorting order. Change `sync` to `share`
debuginfo: Allow to activate GDB pretty printers in autotests.
debuginfo: Add GDB pretty printers for structs and enums.
debuginfo: Emit different autotest debugger scripts depending on GDB version.
debuginfo: Improve GDB version handling in compiletest tool
Allow *-pointers in PtrTy (fixes #16781)
Fix an ICE with error types in a vec

Closes #16783
Forbid ~str and ~[]

This corrects a rebasing error. Also adds a test so it won't happen again.
Fix regionck to consider bounds on a proc when capturing variables
Fix regionck to account for the uniqueness requirements on ref mut reborrows
Fix kindck to consider inherited bounds
Fix issue #15826.

The implemented fix rounds half-way cases away from zero as described in
the original comments.

This rounding algorithm is sometimes called arithmetic rounding. It is
described further here:
http://en.wikipedia.org/wiki/Rounding#Round_half_away_from_zero

I also added several new tests to prevent regressions.