Fix changing encoding on shared ByteList
Merge pull request #1699 from intentmedia/stringio_modify_before_set_encoding

StringIO.set_encoding may change shared ByteList encoding
Merge remote-tracking branch 'origin/master' into new_transcoder