Make integer bit count methods return uints

Fixes rust-lang/rfcs#224
don't say compromise

@dherman doesn't like it :smile:
Fix documentation typo.
readdir: return error instead of failing on invalid UTF-16
Fixes #15279

Signed-off-by: Peter Atashian <retep998@gmail.com>
auto merge of #17019 : steveklabnik/rust/remove_compromise, r=thestinger

@dherman doesn't like it :smile:
auto merge of #17032 : jamesluke/rust/master, r=alexcrichton

"extern create" -> "extern crate"
auto merge of #17005 : bjz/rust/bit-count, r=thestinger

Fixes rust-lang/rfcs#224
auto merge of #17034 : retep998/rust/glob-fix, r=alexcrichton

Fixes #15279
Based on #13338
Fix deprecate warning "extern crate ... as ..."

Its arguments were inverted.
auto merge of #17015 : seb-m/rust/fix-extern-crate-as, r=sfackler

Its arguments were inverted.

For instance it displayed this message:

```
warning: this extern crate syntax is deprecated. Use: extern create "foobar" as foo;
```

Instead of:

```
warning: this extern crate syntax is deprecated. Use: extern create "foo" as foobar;
```