The first translator to consume codepoints from the input is the 'winner'.
Execution stops with the number of consumed codepoints being returned.
Translate a set of codepoints, represented by an int index into a CharSequence,
into another set of codepoints. The number of codepoints consumed must be returned,
and the only IOExceptions thrown must be from interacting with the Writer so that
the top level API may reliably ignore StringWriter IOExceptions.