library-level docs for collections

Adds a high-level discussion of "what collection should you use for what", as well as some general discussion of correct/efficient usage of the capacity, iterator, and entry APIs.

Still building docs to confirm this renders right and the examples are good, but the content can be reviewed now.
BTW, you can reexport multiple things at once `pub use self::map::{Occupied, Vacant};`.