> So how detailed do we want to be about which exceptions are thrown?

I'm not sure. With some exceptions, listing them in the docs is useful. But with something like `UTFException`, it can be thrown from almost anywhere. Pretty much any code that's doing anything more with strings other than simply passing them around risks throwing it. So, if you tried to list it on every function that could throw it, you'd be listing it almost everywhere.

At minimum though, I'd say that the ones which are thrown explicitly by the function should be listed.