std: change BufWriter to return ShortWrite/EndOfFile
Ignore issue #16671 test on android

Seems to be blocking forever
Ignore wait-forked-but-failed-child

Test will be fixed in #19588
auto merge of #19590 : sfackler/rust/fix-android, r=sfackler

Seems to be blocking forever
auto merge of #19431 : erickt/rust/buf-writer-error, r=alexcrichton

Previously, `BufWriter::write` would just return an `std::io::OtherIoError` if someone attempted to write past the end of the wrapped buffer. This pull request changes the error to support partial writes and return a `std::io::ShortWrite`, or an `io::io::EndOfFile` if it's been fully exhausted.

 I've also optimized away a bounds check inside `BufWriter::write`, which should help shave off some nanoseconds in an inner loops.
libcollections: remove unnecessary `as_slice()` calls
liballoc: remove unnecessary `as_slice()` calls
libcoretest: remove unnecessary `as_slice()` calls
libflate: remove unnecessary `as_slice()` calls
libfmt_macros: remove unnecessary `as_slice()` calls
libgetops: remove unnecessary `as_slice()` calls
libgraphviz: remove unnecessary `as_slice()` calls
liblog: remove unnecessary `as_slice` calls
libregex: remove unnecessary `as_slice` calls
libregex_macros: remove unnecessary `as_slice` calls
librustc: remove unnecessary `as_slice()` calls
librustc_back: remove unnecessary `as_slice()` calls
librustc_trans: remove unnecessary `as_slice` calls
librustdoc: remove unnecessary `as_slice()` calls
libserialize: remove unnecessary `as_slice()` calls