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.
More precisely: you have a type of keys `K`, and for each distinct key you want to associate at most one value.