remove non-thread-safe function call

conoutf can't be used from any thread other than the main one.
clientlogf may still mix up the output, but it won't crash.
allow kick/ban reasons to have up to 20 spaces without fuss
fix string lengths for server kill messages

this fixes several problems with some global variables, since they no
longer get overwritten by null bytes from this oh so important function...
fix illegal typecast

fixes crash during intermission caused by activated and held grenade
Don't show "connecting to $servername", if server doesn't have a name
Fix - don't allow dead body of player to climb on the ladder

It was visible probably only locally.
Better visibility for warning about outdated AC version

Commit changes also masterserver URL to AC homepage in info related
to this warning.
fix directory search order

also clarify some log output
(thx grenadier)
added mandatory client log file

- a client will now write all os console messages to "clientlog.txt"
- at every game start, the log file gets rotated (with five old logs kept)
- commandline parameter "-N" can be used to limit the number of lines
  (after the lines are logged, the file is closed)
Fix switching from spectator to active team in bot modes

Before this fix player could switch from spectate to alive mode,
but he stayed in SPECTATOR team.
Note: 2 mouse clicks are necessary to player's spawn. Second respawnself()
is needed, because spawnplayer() is executed before server will switch
player1 to active team, so he would always spawn in CLA base (in bot
team modes).
Show always all servers after forcing serverlist update
Improve "favourite servers" feature

The commit:
1. does serverdescription keyword case insensitive for
showonlyfavourites > 0;
2. fixes typo in argument of alias in keyword;
3. fixes disabling background color for servers of the category, when
alpha is changed to 0;
4. shows 0 instead of 10 in info about digit, which toggles 10th category;
5. adds info about "image" attribute in favourites.cfg;
6. adds new feature: "Search for servers".
Fix warning messages to spammer changing name/skin

Warning message will be sent only to spammer changing name/skin,
and only in multiplayer, what fixes issue:
https://github.com/assaultcube/AC/issues/66
Display HUD messages over some less important info
fix mandatory client logfile

The logfile can't be created before the commandline arguments are parsed,
because before that, the home directory is unknown. This patch logs
into a memory buffer which is then copied to the logfile as soon as
the logfile is created after processing the commandline arguments.

The memory buffer is created during the initialisation of global variables,
and destroyed after the logfile is created.
remove restrictions on mapmodel rotation

Until now, the angles of mapmodels (and ctf-flags) were rounded to the
nearest 15-degree-step during rendering. This patch moves the rounding
to the time of placement of the model. Now the angle can be changed freely
after the model has been placed.

This commit also changes the angle resolution to 0.25 degree.

When changing the angle (press "1" + scrollwheel), additionally pressing
editmeta (a.k.a. LCTRL) changes the increments of the wheel from 1 to 10.

During a savemap with format 9, the angle resolution is reduced again, to
keep compatibility. Therefore, this features is only for testing right now.
It won't be preserved during a save (at least, as long as format 9 is used)
server: skip needless allocation in `numplayers`