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.
Pushing onto a Vec is surely the most efficient way to collect up a bunch of values, no? Similarly Vecs should iterate the fastest for extracting the values when you want them.