[MP] Restore old currentVM with non legacy API.
[MP] Also fix an earlier crash in /give <item> if removed in G_SpawnItem and not just in FinishSpawningItem.
[MP] Remove assigned-but-not-used `lastVM` variable.
[MP] Some AI bugs (OVERFLOW!) in the bot movement code.
From Tobias Kuehnhammer in ioq3 commit: ioquake/ioq3@eb9fe030c47281e6145908e0331cc543b4aaf432
[MP] Remove unused function prototype
[MP/SP] Use callbackFunc_t
Merge pull request #499 from mike-pm/master

[MP/SP] Code maintenance
Introduce pool allocator for scheduled efx

Before this commit, efx were scheduled to be played by dynamically
allocating memory every time, and then freed when the efx's life time had
ended. Introducing a pool allocator potentially removes the overhead of
many dynamic allocations per frame.

Further work needs to be done to remove dynamic allocations for the
effects themselves (see FX_AddLine, FX_AddBezier, etc. functions).