refactor and remove GlobalSettings.kem

**please review**
in fact this is what I am doing with ParseFailedException. It is a further optimization that could be done, but I think this diff is big enough already. The point of this diff is to remove the static KExceptionManager. Making errors occur by throwing an exception was simply done to facilitate that refactoring without requiring such intrusive changes. If you like, you can add an issue for this and assign it to me though.