std: Add an I/O reader method to fill a buffer

I've found a common use case being to fill a slice (not an owned vector)
completely with bytes. It's posible for short reads to happen, and if you're
trying to get an exact number of bytes then this helper will be useful.
rand: Use fill() instead of read()

It's possible for a reader to have a short read, and there's no reason the task
should fail in this scenario. By using fill(), this has a stronger guarantee
that the buffer will get filled with data.
auto merge of #13053 : alexcrichton/rust/removing-ref-cell-get, r=huonw

This commit removes the `get()` method from `Ref` and `RefMut` in favor of the `*` operator, and removes all usage of the `deref()` function manually from rustc, favoring using `*` instead.

Some of the code is a little wacky, but that's due to either #13044 or #13042
Add Vec::mut_slice_from(), mut_slice_to(), and mut_split_at()
auto merge of #12995 : Kroisse/rust/vec_ng_mut_slices, r=alexcrichton

These functions are implemented for &mut [T], but std::vec_ng::Vec has not yet.
Get rid of @Cell
Unindent stringifier() in tasks guide
auto merge of #13076 : FlaPer87/rust/remove-freeze, r=alexcrichton

This PR removes the `Freeze` kind and the `NoFreeze` marker completely.

Fixes #12577

cc @nikomatsakis r?
auto merge of #13084 : Havvy/rust/master, r=alexcrichton

The indentation looks off in the guide because the main() function is not shown, so I'm dedenting the visible function.
Implement vtable support for autoderef.
Closes #13042.
auto merge of #13085 : edwardw/rust/saddest-cell, r=cmr
Implement cross-crate support for autoderef.
Closes #13044.
auto merge of #13087 : eddyb/rust/fix-autoderef, r=cmr

Implements vtable support for generic Deref impls with trait bounds.
Also fixes cross-crate inlining when using autoderef.
Some cleanup in std::io::buffered

`Vec` is now used for the internal buffer instead of `~[]`. Some module
level documentation somehow ended up attached to `BufferedReader` so I
fixed that as well.
Change types T,U to R (recv), S (sender) in libsync/comm.rs
make std::managed private

This removes two tests built on `managed::refcount`, but these issues
are well-covered elsewhere for non-managed types.
auto merge of #13089 : thestinger/rust/managed, r=Aatch

This removes two tests built on `managed::refcount`, but these issues
are well-covered elsewhere for non-managed types.
use TotalEq for HashMap

Closes #5283
auto merge of #13088 : thestinger/rust/hashmap, r=cmr

Closes #5283
iter: remove `to_owned_vec`

This needs to be removed as part of removing `~[T]`. Partial type hints
are now allowed, and will remove the need to add a version of this
method for `Vec<T>`. For now, this involves a few workarounds for
partial type hints not completely working.