Fixed potential memory leak in sf::Font
Added String::substring() method

Based on pull request #355 from abodelot
Merge pull request #509 from ophui-/master

Fixed potential memory leak in sf::Font
Fixed forgotten members in sf::Font::operator=
Removed unnecessary null pointer checks in Window.cpp

Fixes #532
Avoided unnecessary toLower string conversions
Changed tabs to spaces in various files
Merge pull request #540 from tomgalvin594/convert_tabs

Changed tabs to spaces in various files
Adds name, vendor ID and product ID for joysticks.

- Implemented on Windows, Mac OS and Linux.
- Adds sf::Joystick::Identification structure to hold
  name, vendor ID and product ID.
Implemented a more flexible blending system (fixes #298)
Merge pull request #528 from NoobsArePeople2/joystick

Adds name, manufacturer ID and product ID for joysticks.
Added CMake find module for udev library
Created branch for experimental blending mode API

See issue #298.
Based on branch 'new_blending_api' of github.com:tomgalvin594/SFML.
Adjust CMake module to provide correct deps on OSX

Module will now give the OpenGL framework as a dependency instead of the
nonexistent libGL.
Fixed compile error (trailing enum comma) and other minor things
Omitted "Blend" prefix for nested BlendMode enums

BlendMode::Factor instead of BlendMode::BlendFactor
BlendMode::Equation instead of BlendMode::BlendEquation
Improved formatting
Improved documentation
Passed BlendMode objects by const-reference
Image::flipVertically(), Image::flipHorizontally() optimizations.