Scrap the random guard placement

The guard placement randomization is practically impossible to write so
that it'd guarantee a route through the map without making it too
trivial.

Now, there are 3 separate hardcoded guard layouts, one of which will be
chosen at random.
Simplify an event
fix mp seed generation
add debug info.
simplify use of config_of 2
fix oos message.
catch boost locale conversion_error

and add some more debug info in boost locale.
fix indention
remove old rng code

the new boost mt rng returns full 32 bits of random so we don't need to
call it twice anymore if we need more than 15 bits of random.
fix compile error

msvc didn't have a problem with the previous code.
refactor commit 3f3687388f7ee528931de15a25a0b5acb4697561
fixup HEAD^
Refactor part of the load game code to remove load_game_canceled_exception

Instead of throwing an exception, the relevant functions will return a false bool

Conflicts:
	src/game_initialization/multiplayer_create.cpp
	src/savegame.hpp
in in-game load dialog, check health and version before exit game

This is fixes a minor bug:
When loading a save from the in-game load dialog, as soon as the
user clicks "ok" to load a savefile, an exception would be thrown
which effectively quits the game, before determining the integrity
and version info of that file.

It's better not to exit a running game if the new game can't be
loaded, so in this commit check these things and abort before
exiting if appropriate.