bgl API docs: link to OpenGL 2.0 reference

D538 by codemanx
Fix T40252: Knife snapping ignores axis-constraint
BGE cleanup: Removing the unused KX_Scene::UpdateMeshTransformations() function.
Fix T34255: Modifier keys ignored when activating windows
Freestyle: Fix for GetOccludeeF1D returning a one-element list containing None when it is supposed to return an empty list.
Freestyle: Fix for returned references to auto variables.
Fix T40271: Missing redraw for bone editing bone roll

We should have a new notifier for this
Polyfill: simply re-ordering checks gives ~%15 speedup
Use int for i in hair smoothing function, we check against negative
values below
Fix T40224: Crash moving objects to another layer

passing NULL to BLI_sprintfN crashed in some cases.
This reverts commit c998d6d4b5a3bd88375c3255761e1e64a5321559.
Fix T40224: Crash moving objects to another layer

Incorrect nonnull attribute was optimizing out NULL check.
Fix T40269: Transform Constraint Doesn't Obey World/World Setting (Inherits from Parent instead!)

Revert small part of own rB8714ae09f894, which changed scale setting from absolute to relative
(was good in absolute, but bad because it breaks existing rigs).
Fix T40280: sequencer sound strips with an end at a negative time kept playing

The bug was caused by using negative numbers as the end for playing forever (or until the end of the sound is reached) in the library. This was used with speaker objects which have an end of FLT_MAX now instead and the negative number interpretation was removed. I hope this doesn't break anything else.
BGE LibNew: Only warn about meshes with users in debug builds.

This information only really seems to be for helping developers track
down bugs, and isn't really something the user needs. So, lets not spam
their console.
Fix T40267: Addon's bug tracker urls not respected
Fix for uninitialized memory use in Cycles
Fix T40289: Cycles leaking memory

error in recent commit
Fix T40291: Crash when adding # driver to some fields
Fix T40271: recalculation of the bone roll does not work correctly.

Check that up_axis is not aligned with bone was wrong in at least two aspects
(not working against negative alignement case, and since ages it seems,
using Z axis when bones are along Y axis...).

Also optimized a bit here, better to have a normalized version of vec_roll_to_mat3(),
since it needs normalized vector anyway, and we have to normalize it for the tests
before calling it anyway (so now, we only do that twice in Transform code, instead
of three times).

And we can perform aling test *before* calling vec_roll_to_mat3!