Use GL_Bind and GL_Unbind in more places

Not using these functions will make our tracked state wrong
Fix NULL dereference crash
Add backface culling for dynamic lights

This matches what we do for static lights at map load time
Fix erroneous frustum culling of inverse shadows

We still need the surfaces in order to render the shadow clip maps
Fix dynamic lights when r_mergeLeafSurfaces = 1
Fix dynamic light pvs culling

Previous code would erroneously cull surfaces that aren't in the potentially visible set
This was wrong because those surfaces could still cast shadows into the potentially visible set
Fix dynamic light culling

R_AddInteractionSurface may be called multiple times for a surface with different interactionBits if a surface spans multiple leafs
Always turn inverse shadow lights into projection lights