OpenGL2: Fix TCGEN_ENVIRONMENT stages not rendering correctly.
OpenGL2: Clean up texmod calculations, and improve vertex animation handling.
OpenGL2: Use an idea from ETXreal and separate world VBO into separate VBOs by shader.
OpenGL2: Merge bsp surface structs into a single struct, and more cleanup.
Don't add \ in autocomplete if not auto chat

Move con_autochat to from client to qcommon, it's used by sys/con_tty.c and cgame.
Merge remote-tracking branch 'ioquake3/master' (plus more)

Some code was revert to match ioq3, even though it wasn't touched by the merged commits.

Conflicts:
	code/renderergl2/tr_bsp.c
	code/renderergl2/tr_light.c
	code/renderergl2/tr_main.c
	code/renderergl2/tr_shade_calc.c
	code/renderergl2/tr_world.c