std: convert first_non_utf8_byte to use the iterator.

As far as I can tell, this has no performance impact on from_utf8_lossy,
but it does make it use no `unsafe` code.