Fixed crash on 32-bit machines

uint-to-intptr conversion must obey uint-to-int conversions on 32-bit
machines, otherwise an OverflowException may occur: conversions of
numbers over 2^31-1 must be declared as unchecked.

Fixes issue reported here: http://www.opentk.com/node/3418
Added DebugProc delegate in accordance to GL 4.3 specs.
Added ConstCharPointer->string transformation in accordance to GL 4.3
specs.
Re-added BeginMode and PixelFormat enums which were removed by the
OpenGL spec.
Added strong types for sync and fence objects (4.4 core specification,
section 4.1).
Updated to the latest gl.tm from Khronos public svn.
Added usage example.
Updated to the latest 4.3 .spec files from the OpenGL registry.
Implemented compatibility overloads for the changes introduced by the
4.3 .spec files.
Added DebugProc definition required in the 4.3 specs.
Fixed exception while parsing the 4.3 specs.
This was caused by changes in the .spec file definitions between 4.1
and 4.3.
Updated to the latest 4.3 specs (WIP).
Array overloads with count=1 should be turned into ref/out parameters.
This fixes an issue where arrays with count=1 would remain as unsafe
pointers instead of becoming ref/out parameters.
Updated strong-types for asynchronous queries, query objects and time
queries according to OpenGL 4.4 spec, section 4.2.
Updated strong-types for Buffer Objects according to the OpenGL 4.4
spec, section 6.
Implemented strong-types for Shader and Program Objects according to
the OpenGL 4.4 specification, section 7.
Merge branch 'master' of https://github.com/thefiddler/opentk
Line ending fix.
Merge branch 'master' into gl4