[SDL] Workaround for a Mono crash in SDL.JoystickGetGUID

It appears that Mono 3.4.0 fails to marshal SDL_JoystickGUID
correctly when used as a return value. Changing the fixed buffer
to a couple of long fields allows the struct to be marshalled
correctly.
Merge pull request #163 from thefiddler/sdl_guid_crash

[SDL] Workaround for a Mono crash in SDL.JoystickGetGUID
[X11] Added XGetAtomName() function
[X11] Check before using motion/scroll valuators

These valuators are not available on all systems. We now check
explicitly for support, instead of returning invalid results.

Additionally, unknown valuator names are now printed to the
debug log.
[X11] Added strong-typed enum for XIValuatorInfo.mode
[X11] Fixed absolute motion valuators
[X11] Fixed core X11 scrolling and absolute y motions
Merge pull request #164 from thefiddler/x11_scrollfix

[X11] Fix legacy scrolling and absolute pointer motion
[Rewrite] Cast int32 overloads to native int

Int32 parameters should be converted to native int when
the native signature expects the latter.
[Bind] Add int overloads to buffer size (IntPtr) parameters

As a convenience, int overloads are provided for IntPtr size
parameters (corresponding to BufferSize or size_t). In the vast
majority of cases, a 32bit int is sufficient for buffer sizes,
so these overloads avoid the necessity of annoying (IntPtr) casts.

If more than 2^31-1 elements are required, the IntPtr overloads
remain available. (As always, this requires a 64bit runtime
environment.)
Merge pull request #172 from thefiddler/intptr_fix

[Rewrite] Cast int32 overloads to native int
[GL] Added int overload to DrawElements for OpenGL4
[Build] Update Travis CI to mono 3.6.0
Merge pull request #175 from thefiddler/mono360

[Build] Update Travis CI to mono 3.6.0
Merge pull request #174 from thefiddler/issue171

[GL] Added int overload to DrawElements for OpenGL4
Merge pull request #173 from thefiddler/buffersize_to_int

[Bind] Add int overloads to buffer size (IntPtr) parameters
[GL] Added ARB_clip_control
[GL][ES] Added tokens for backwards compatibility

The 4.5 spec moves BLEND_ADVANCED_COHERENT_KHR from
KHR_blend_equation_advanced to KHR_blend_equation_advanced_coherent.
Add a deprecated token to maintain binary compatibility.
[GL] Implemented ARB_cull_distance
[GL] Implemented ARB_conditional_render_inverted