Implement Show for 1-12 element tuples
Delegate ToStr implementation to Show for tuples
Merge ImmutableTuple* traits into their respective Tuple* trait
Improve naming of tuple getters, and add mutable tuple getter

Renames the `n*` and `n*_ref` tuple getters to `val*` and `ref*` respectively, and adds `mut*` getters.
Remove CloneableTuple and ImmutableTuple traits

These are adequately covered by the Tuple2 trait.
auto merge of #12313 : bjz/rust/tuple, r=huonw

This renames the `n*` and `n*_ref` tuple getters to `val*` and `ref*` respectively, and adds `mut*` getters. It also removes the `CloneableTuple` and `ImmutableTuple` traits.