Reworked charset handling a bit and handle NotSupportedExceptions