Collections Reform Part 2

This RFC shores up the finer details of collections reform. In particular, where the previous RFC
focused on general conventions and patterns, this RFC focuses on specific APIs. It also patches
up any errors that were found during implementation of part 1. Some of these changes
have already been implemented, and simply need to be ratified.

[rendered](https://github.com/Gankro/rfcs/blob/collections2/text/0000-collections-reform-part-2.md)
You're right the name is confusing in the face of the slice method (which I had forgotten about). Still, I think this is the signature we want. Minimizes moves, doesn't require by-value ownership (which of course can be hacked with `replace` or `swap`, but I'd rather not if possible).

Perhaps just `split` would be appropriate?