safe-exceptions: Safe and simple exception handling

We previously recommended using the safe-exceptions library for exception handling. We now recommend moving over to the UnliftIO.Exception module, which has its own tutorial.

If you're still interested in the safe-exceptions library, please see its README.md.