Add linting for `crate_type` attribute values.

This ensures that the `crate_type` attribute always contains a value,
and does not contain an invalid value.
Update AUTHORS.txt for 0.9
Bump more version numbers to 0.9
Give more effusive credit to authors
Bump version to 0.9
libextra: Add benchmarks for ebml::reader::vuint_at()
libstd: Always inline all byteswap functions
fixup! libstd: Always inline all byteswap functions
Abort on double-failure. #910

Previously this was an rtabort!, indicating a runtime bug. Promote
this to a more intentional abort and print a (slightly) more
informative error message.

Can't test this sense our test suite can't handle an abort exit.
auto merge of #11276 : brson/rust/0.9, r=pcwalton
Remove std::either
Fix windows dist script

In copying the license for the third-party bins it is attempting
to delete a directory that doesn't exist.
auto merge of #11149 : alexcrichton/rust/remove-either, r=brson

Had to change some stuff in typeck to bootstrap (getting methods in fmt off of Either), but other than that not so painful.

Closes #9157
auto merge of #11264 : am0d/rust/crate_type_lint, r=alexcrichton

This ensures that the `crate_type` attribute always contains a value,
and does not contain an invalid value.

Fixes #11256.
libsyntax: De-`@mut` `ParseSess::included_mod_stack`
librustc: De-`@mut` the parse session
libsyntax: De-`@mut` `StringReader::pos`
libsyntax: De-`@mut` `StringReader::last_pos`
libsyntax: De-`@mut` `StringReader::col`
libsyntax: De-`@mut` `StringReader::curr`