Fix memmove()

[The lcc source] overrides the libc memmove() with its own implementation,
but that implementation fails to follow the specification. In particular,
it returns NULL rather than memmove()'s first parameter.

GCC now optimizes based on this aspect of the specification, so things go
wrong at runtime.

[Text & patch from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56881#c8]
Fix a uninitialized memory access reported by Valgrind.

Also don't bother sending a large hunk of uninitialized memory to
the GPU when there's a lot of perfectly uninitialized memory available
on the graphics card.
correct switched ERR_FATAL and ERR_DROP setting in Q_strncpyz(Debug), so that broken downloaded cgames just drop the client in NDEBUG, and fatal otherwise (not the other way around)
coneptually clarify and and set states accordingly for act(), delay and the active state in relation to each other
keep track of "upstream" call-ins with the entity for walking the call hierachy
this will replace the kept activator soon, and allow us to walk the call hierachy completly with caller and used calldefinition
eventually we might use this for a simple loop detection
also notify and clean callin onCustom
Replace more pointers to invalid data with NULLs.
add RunAct() to call act each time nextAct <= level.time, as a means to delay act()ing or time it directly instead of abusing think() for it
add a variatingTime_t field reset function
replace the G_SetNextThink with an abstracter macro able to resolve any variatingTime_t
add global WORLD_CALL gentityCall as origin of all world generated and/or programatic calls as well as a NULL_CALL
refactor resethelper functions for consistency and reorder parameters to maybe use varargs there later
move field spawn functions into g_spawn.h, since we cant use them outside the spawning process anyway
reimplement the act() execution process to make sure that both direct as delayed calling behave the same and run over the right channels
move VariatedLevelTime macro over to g_local next to its type
add some missing defines around playerstate serialization in msg.c
Revert "remove unnecessary pointer usage for readability"

This reverts commit 20c17a709c96e1bca4db928ff8f3397de931e2bd.
Fix too many arguments for format warning.

Thanks kangz.
Implement 4 grading texture slots + color grading weights.

The weights are passed in the refdef struct as it is expected that
they will be recomputed every frame anyway.
let path_corners reset to their classes speed before using the train speed, and reset to the default trainspeed as last fallback instead of using its own fallback