Make AtomicPtr use *mut, instead of ~
Add AtomicOption type
Add some documentation
core::vec is missing methods for mutable slices
auto merge of #6740 : Aatch/rust/atomic-types, r=brson

This is a follow up to #6732. Makes everything a little more sound.

r? @brson
auto merge of #6780 : june0cho/rust/issue5984, r=brson

Fix #5984. Also, I found a problem on type inference and left a comment.
Make missing documentation linting more robust

Add some more cases for warning about missing documentation, and also add a test
to make sure it doesn't die in the future.
Allow doc(hidden) and --test to disable doc linting
Require documentation by default for libstd

Adds documentation for various things that I understand.
Adds #[allow(missing_doc)] for lots of things that I don't understand.
libextra: Require documentation by default