Improve rcFilterGaps

This fixes a gap in the generated navmesh for nexus6 near the large transparent tube.
The problem was caused by the gap being small and the ledge being curved at an angle too steep to normally be walked on.

It would be preferable if mappers would clip these small gaps in the floor since future projects like accurate foot placement and bullet physics won't be as forgiving.
Make new computed cellHeight a multiple of stepSize when the existing one is too small

This improves the accuracy of detection of steps.
It helps with the generated navigation mesh for starAtcs.
Add more optional parameters for navmesh generation

stepsize allows you to control the maximum height that the player can step over
includecaulk allows caulk surfaces to be used for navigation mesh generation
remove the cl_IRC_kick_rejoin feature
Don't use patches which lie outside the bbox of the brushes during navmesh generation

This improves navigation mesh generation for StarAtcs.
The resulting navigation mesh is much smaller and accuracy is much higher.
Simplify the contents check for brushes during navmesh generation

checking for CONTENTS_BODY does not make sense because it is exclusively used for entities added in game.
Increase the tile border size

This allows rcFilterGaps to work across tile boundaries
Prevent crashes when r_deferredShading > 0
Use content flags provided by the specified game for navmesh generation
Fix 4f7d857a7170a2580ce0a0c69bed7a72d73267c0. Shotgun works as expected now.

In the bad commit, Q_crandom() allowed negative values into the sqrt. This led to bad things happening (like not all the shotgun shots would hit where expected.)
Make bot aiming framerate independent
Fix off by 1 error with enemy reaction time
Set the pain function for bots after it is cleared by ClientBegin
Add comments that describe the range of Q_random and Q_crandom

Fuma wants them. The functions themselves aren't exactly descriptive at a glance.
Remove duplicate G_RoomForClassChange code from g_alienbot.c
Set cl_renderer GL if GL3 crashes during shader compilation.

In a release build, GLSL shader compiliation usually means that the hardware does
not support GLSL shaders and should rely on vanilla instead.
Fall back to vanilla renderer if OpenGL version < 2.1

OpenGL 2.1 introduced GLSL version 1.20 which introduced a few features that we use
We also specify #version 120 in the shader text
Print a few short interesting bits of OpenGL information by default to help with debugging user issues
Remove a few useless or duplicate things from q_shared.h
give out the current used entity count in /entitylist to get actual entityamount instead of the poolsize