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)
Revert "unfiltered display of preview"

This reverts commit 54502968799e58fe6567ab1c3d5cd81967a5cf7c.
I don't know, why the code was changed before, but that caused, that images
in menu weren't transparent, for example image of favourites in
the serverbrowser.
keep the last five versions of saved.cfg and init.cfg

Renames the existing saved.cfg to saved-old-1.cfg (and an existing -1 to
-2, and so on) before the new saved.cfg is written.

This should help in cases where players mess up their config, because the
config is deleted with a five-game-starts delay.
Fix gonext command and do it random

Commit fixes broken "gonext" command, among other things reading time
from maprot, and it does random result of this command.
It also removes get_next() function, because it messes up the maprot,
so shouldn't be used.
Add alternative views in serverbrowser and improve favourites

Alternative views in the serverbrowser are implemented with use favourites.
Categories (names) of favourite servers, which will be displayed on the
views, have to be included in "serverbrowseraltviews" alias (accessible
in menu).
Switching between views is possible with use Alt + Mouse wheel and
Alt + Up/Down (or eventually "[" and "]", if they are dedicated keys
on your keyboard).

The commit also:
1. adds MATCH category to favourites;
2. shows category name in settings of favourites;
3. shows weights in serverbrowser instead of favourites image,
when showweights = 1;
4. cleans up some tabs.
fix filtering of serverdescriptions for ascii scores