Translate professions

Use `profession::gender_appropriate_name` instead of `profession::name`.

Translate the profession name while loading from json.

Create default female/male names if only a gender neutral name has been given.

Removed translation of profession name from newcharacter.cpp as the function returns an already translated name.

Made translation easier in player.cpp: put article, gender string and generic profession name in one string.

The only place where the gender neutral name is used is the list of professions. Otherwise the list would contain lots of entries that start with "female " or "male " and that looks ugly.

The are several places where strings get "glued" together ("Profession %1$s %2$s %3$d points (net: %4$d)") that might be better if they are completely separate strings ("Profession %1$s earns %2$d points (net: %3$d)" and "Profession %1$s costs %2$d points (net: %3$d").

Fixes #6445