[ES][GL] Synced with April Khronos specification
Fixed creating contexts without native windows.

To create a context for the GTK GLWidget, you need to be able to
specify the exact NSView you want the OpenGL context to apply to. Also,
you don’t want to initialise the NSApplication in this situation, which
the CocoaContext did before (unintentionally).
Added Quit menu item + shortcut (Cmd+Q).
[Core] Added MouseCursor class

This branch marks the beginning of hardware cursor support (affects
issue #9)
[SDL2] Implemented cursor APIs

Affects issue #9
[All] Initial implementation of INativeWindow.Cursor property

Affects issue #9
IconInfo structure.
CreateIconIndirect function.
GetIconInfo function.
SetCursor function.
GetCursor function.
DestroyIcon function.
MouseCursor example.

Small example to show how the MouseCursor class can be used.
Partial implementation of Windows MouseCursor.

Very buggy, but starting to show results.
Copy cursor.png to output.
Don't hardcode cursor.png path.
Copy to correct offset.

Offset into image is y * stride, not y * bpp.
No need for named variable.
Respond to WM_SETCURSOR messages.

Calling SetCursor on mouse moves is not enough, we need to respond to
SETCURSOR messages. If we have a custom cursor we need to call SetCursor
and then NOT call DefWindowProc, otherwise we just call DefWindowProc
for the forms default cursor.
Xcursor types.