Align the tess struct in the renderer

This fixes a warning on startup
Add header file information to CMakeLists to make it more IDE friendly
Merge branch 'master' of https://github.com/Unvanquished/Unvanquished
Fix previous commit which introduced file conflicts
Drop all key events generated while loading; forget what's pressed.

Turns out that they're queued for the first frame and are all processed
then, which defeats clearing the button info. And if they're converted from
SDL input events to game input events, the key-up events get lost (which may
be a problem in the new +command handling).

Easier and cleaner just to drop them all.

‘I was typing when it started loading the next map’ command execution was a
manifestation of this buffering problem and is therefore fixed by this
change.
Initial support for alternative shaders based on entity state.

This adds an extra shader keyword, ‘when’, which appears at the same level
as diffuseMap etc. It takes two parameters: a word describing what condition
(purely a convenience for the reader) and the name of another shader.
Currently, there are two condition names: ‘unpowered’ and ‘destroyed’.

Which alternative shader is used is set when calling R_AddRefEntityToScene:
the code (usually cgame) sets the altShaderIndex member of the parameter to
a value in enum altShader_t.

This is implemented and working for (some) MD5 building models, and
implemented but untested for MD5 player models.
Bump VM ABI version.
Actually load the idle3 animation.

Previously, idle2 was being loaded twice.
Merge branch 'master' into for-0.18

Conflicts:
	src/engine/client/cl_input.c
	src/engine/client/client.h