str: rm `map_chars`, replaced by iterators

mapping a function against the elements should not require allocating a
new container, but `collect` still provides the functionality as-needed
auto merge of #8990 : thestinger/rust/str, r=alexcrichton

mapping a function against the elements should not require allocating a
new container, but `collect` still provides the functionality as-needed