collections, unicode: Add support for NFC and NFKC
Rename modules.rs to main.rs in guide
auto merge of #16235 : cakebaker/rust/rename_modules_rs_to_main_rs, r=steveklabnik
auto merge of #15986 : Florob/rust/nfKc-new, r=alexcrichton

This adds a new `Recompositions` iterator, which performs canonical composition on the result of the `Decompositions` iterator (which is canonical or compatibility decomposition). In effect this implements Unicode normalization forms C and KC.
API docs/examples for std::slice

 - API example for move_from in MutableVectorAllocating
 - API doc/example for next() in Permutations
 - API doc/example for permutations() in ImmutableCloneableVector
Fixes to pull request #16244

- Moved examples for permutations and next into trait definition.
Merge with origin