std: Rename {push,read}_bytes to {push,read}_exact

These methods can be mistaken for general "read some bytes" utilities when
they're actually only meant for reading an exact number of bytes. By renaming
them it's much clearer about what they're doing without having to read the
documentation.

Closes #12892
Remove RefCell::{with, with_mut}

These are superfluous now that we have fixed rvalue lifetimes and Deref.
std: Implement Clone/TotalEq for ProcessExit

It's useful for structures which use deriving(Clone, TotalEq), even though it's
implicitly copyable.

Closes #13047
Clean up marker types and Unsafe initialization
Copy-edit a sentence about borrowing references
auto merge of #13051 : alexcrichton/rust/issue-13047, r=thestinger

It's useful for structures which use deriving(Clone), even though it's
implicitly copyable.

Closes #13047
auto merge of #12907 : alexcrichton/rust/issue-12892, r=brson

These methods can be mistaken for general "read some bytes" utilities when
they're actually only meant for reading an exact number of bytes. By renaming
them it's much clearer about what they're doing without having to read the
documentation.

Closes #12892
auto merge of #13052 : sfackler/rust/clean-refcell, r=alexcrichton

These are superfluous now that we have fixed rvalue lifetimes and Deref.

I'd also like to kill off `get` and `set`, but that'll be a large change so I want to make sure that we actually want to do that first.
auto merge of #13062 : mbrubeck/rust/doc-edit, r=alexcrichton

This is a very minor edit to the tutorial section on references.

Reading this section for the first time, I stumbled on the phrase "a reference can be borrowed to any object."  Its meaning was clear enough once I got it, but I had to re-read it a couple of times to parse it correctly.  Something about the passive voice plus the way "reference to any object" is split up by the verb phrase.  How about this instead?
rustc: Remove special treatment for Freeze and NoFreeze

Fixes #12577
arena: Remove Freeze / NoFreeze
sync: Remove Freeze / NoFreeze
std::comm: Remove Freeze / NoFreeze
cell: Remove Freeze / NoFreeze
std: Remove the Freeze kind and the NoFreeze marker
test: Remove Freeze / NoFreeze from tests
doc: Remove Freeze / NoFreeze from docs
std::os: Handle FormatMessage failure

`FormatMessageW()` is called by `std::os::last_os_error()` to convert
errno into string, but the function may fail on non-english locale.
I don't know why it fails, but anyway it's better to return errno
than to `fail!()` in the case.

Fixes #13075
Fixes #13073
auto merge of #13078 : klutzy/rust/issue-13075, r=alexcrichton

`FormatMessageW()` is called by `std::os::last_os_error()` to convert
errno into string, but the function may fail on non-english locale.
I don't know why it fails, but anyway it's better to return errno
than to `fail!()` in the case.

Fixes #13075
Fixes #13073
std: Remove the get() method from RefCell wrappers

This method has been entirely obsoleted by autoderef, so there's no reason for
its existence.