Optimised OS X implementation regarding scaling factor

This also adds support for changing the screen profile or moving the window to another screen.
Improved OS X implementation

It makes sure the notifications sent to SFOpenGLView are only from its window.
Make sure texture unit 0 is active when reseting RenderTarget states (#523), fix RenderTarget not clearing when a texture used as a RenderTexture color attachment is left bound in a different context (http://en.sfml-dev.org/forums/index.php?topic=9350.0).
Fixed soundbuffer contents not being able to be updated when still attached to sounds (#354), sounds now detach from their buffer when it is reset. Signed-off-by: binary1248 <binary1248@hotmail.com>
Fixed issue where the viewport's width and/or height could be off by 1 pixel

Signed-off-by: Stefan Schindler <stefan@boxbox.org>
Fixed building for OpenGL ES 1.1 platforms

* Added proper extension handling for `glBlendEquation` and related
  constants (required for OpenGL ES 1.1).
Moved glClientActiveTexture and glActiveTexture calls before glEnable(GL_TEXTURE_2D) to make sure texture unit 0 gets affected. (#523)
Fixed potential memory leaks on OS X

And renamed create* methods to new* to follow more closely Objective-C
naming convention regarding memory management.
Removed a dead store in sf::Ftp implementation
Output error message and abort program when XOpenDisplay() fails

Fixes issue #508.

When the X11 display could not be opened, the application crashed without notice. Now, a meaningful error message is output to std::err() and std::abort() is called, causing immediate program termination.
Fixed OS X implementation of sf::Mouse::(get|set)Position

The code was not updated at all when support for retina display was introduced.
Merge branch 'bugfix/osx-implementation'
Fixed minor documentation issue.
[Android] Fixed `TouchBegan` reporting wrong coordinates

* So far `sf::Event::TouchBegan` always reported the coordinates of the
first pointer/finger.
Check socket descriptor limit. #153

When calling select(), there's an upper limit for the socket descriptor
which is defined as FD_SETSIZE. When the socket descriptor is higher
than FD_SETSIZE, a call to select() will not work as expected, at least
for the proper sockets.

This patch adds an error message for this case.
Show error message everytime a shader uniform's location can't be found.

Adjusted code style (TankOs).

Original commit message by the author:
  Show only 1 once the message "Parameter not found"

Conflicts:
  src/SFML/Graphics/Shader.cpp
Fix bitmap font resize failing silently when resizing to an unsupported pixel size (#448), fixed getKerning returning scaled values even for bitmap fonts.
Replaced Text underline offset/thickness with nicer font dependent values.
[Android] Fixed the audio module not working

Who knew the official version of OpenAL-Soft would work on Android...
[Android] Don't disable sensors since it's handled at higher-level