Not all of the world is UTF-8. Assuming that it is is, in fact, wrong.
I appreciate your confidence that things you've never heard of before must exist and work properly, but I'll take that with a grain of salt. Unicode isn't merely UTF-8 and BOMs and hand-waving. Unicode is a set of properties and rules about how to use those properties correctly. If you don't know what they are and when to use them, no language can use them automatically for you on this side of the strong-AI singularity.
(It's easy for me to imagine reading from a filesystem that doesn't return data encoded in UTF-8, or data from the network which doesn't supply a correct encoding or any encoding, because that happens all the time. You can expect that everything always does exactly what you expect, or you can write correct and robust code. You cannot do both.)