Guide iterators

This isn't ready to merge yet.

The 'containers and iterators' guide is basically just a collection of stuff that should be in the module definitions. So I'm moving the guide to just an 'iterators' guide, and moved the info that was there into the right places.

So, is this a good path forward, and is all of the information still correct?
Well the original page has it for multiple types:

- https://github.com/rust-lang/rust/pull/16887/files#diff-cc3af746394f582ee863741589439e75L31
- https://github.com/rust-lang/rust/pull/16887/files#diff-cc3af746394f582ee863741589439e75L58

I was just wondering if there was a reason that only deque had this snippet transferred.

I don't actually think we should bother mentioning these for each type; just have a general section in the main docs about this sort of basic type requirement/implication with only the exceptions with an explicit note like this. 

(i.e. almost all the basic collections have unique ownership & inherited mutability and are careful with their contents, and thus satisfy these properties. Being nonsendable or requiring copy is the 'surprising' case.)