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.
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
[Android] Made the remaining sensors available
Fixed a typo in the comments of Context.hpp
[Android] Added missing sensor event generation
[Android] Fixed redundant touch moved events

Previously moving any finger would create `sf::Event::TouchMoved` events
for all fingers, even if their position didn't change at all.
[Android] Fixed the app crashing on rotation

Rotating the screen will restart the app with the new window/orientation.