No arithmetics for i18n

This gets rid of fragile arithmetic-based hacks for passing around and converting various integer status values to human readable localized text. Proper switch mapping with (hopefully) sane default cases are used instead.

All localized strings formerly referenced by number only are given sane names and used directly. All of them are given unified prefix "STR_", which minimizes the risk of clashing with unrelated identifiers, and will also allow to get rid of this very prefix in language files from #416, bringing in more clarity.