Add complex text layout to sf::Text

Second attempt at solving issue #246.
Use harfbuzz to make sf::Text able to render complex texts, this includes:
* Ligatures
* Diacritics
* RightToLeft layout
* Shaping