Correctly handle invalid language

when loading saves from command line.

Separates out the language loading from the rest of the load logic.

Now we can load from the command line correctly handling any combination
of (mis)matched version saves, (in)valid language setting and (in)valid
named save games while not breaking the traditional starting of new
games and loading saves.