Fixed monitor size using wrong incorrect value.

The display device string was used, instead of the adapter device name,
leading to the wrong incorrect physical size being returned for
non-primary monitors.  The right incorrect physical size is now returned
for all monitors.
Enabled enumeration of mirroring displays.

This exposes all monitors in every mirroring group, which is needed for
robust detection of an Oculus Rift.
Expose display device name as UTF-8.

This makes interaction with libOVR simpler, as it provides the display
device name in the same encoding.
Fixed error return value of glfwGetCocoaMonitor.
Fixed error return values of native EGL functions.
Made glfwGetX11Monitor return output, not CRTC.
Removed duplicate words in documentation.
Added value clamping for stereo hint.
Fixed dead keys in X11.

The library will now try to create an X input context to handle dead
keys properly on international keyboards.  This makes it possible to
enter for example an e with accent grave on a German keyboard without
further efforts.  A fallback mechanism is provided in case the client
does not support X input method / context creation.  In that case, the
library will behave as it did before.
Cleanup of basic XIM support.

Shortened and simplified the code.  Removed reporting of XIM sentinel
key press event.  Added credit.  Updated changelog.

Closes #151.
Documentation work.
Improved grammar of charmods event reporting.
Added support for _NET_WM_FULLSCREEN_MONITORS.

This allows EWMH full screen windows to correctly cover monitors that
overlap other monitors, such as an Oculus Rift mapped onto a section of
a larger monitor.

Fixes #175.
Unified video mode enumeration.