[MP] Fix crashing when mixing C/C++ runtimes

This commit fixes crashing when mixing C/C++ runtimes between the engine
binary, and renderer library. This was due to sharing C++ objects between
the two which is generally bad, unless said object is pure virtual.
[MP] *nix build fixes.
[SP/JK2] Fixed a bug where enemies wouldn't ever pick up the bowcaster
Merge branch 'master' of https://github.com/JACoders/OpenJK
Update README.md
[MP] Correct ordering of func ptrs in ref export
[MP] Match SDL sound with s_khz default.
[SP] Match SDL sound with s_khz default.
[MP] Cleanup else and endif blocks in main cmake script.
The requirement for how we were doing this in some blocks is much older than the version we require.
[MP] Remove a check in getservers response packet code regarding the '/' character.  This isn't necessary with only IPv4 support.
[MP] Handle the necessary parts of q3map_sunExt properly in engine now.
[SP] Handle the necessary parts of q3map_sunExt properly in engine now.
[SP] Change floatInt_t to byteAlias_t.
Fix ComputeFinalVertexColor so that it doesn't use ulong.
[SP] Hopefully fixing previous commit by shifting some stuff around in q_shared.h and adding missing floatint changes.
[MP] Do away with cg_lights.h
[MP] Minor buffer safety with files in cg_weaponinit.c
[MP] Some cg_saga buffer cleanup.
[MP] Missing prototypes to cg_local.h from a previous commit.
[MP] Fix a printf type and cast correctly in RE_RegisterIndividualSkin.
[MP] Some UI code cleanup.