Fix definition of the CMAKE_CXX_FLAGS + linux fixes

As discussed in issue #42, the CMake buildsystem is broken on some systems because the project definition does not come at the beginning of the CMakeLists.txt. Because of this, CMake does not know that this is a C++ project and the CMAKE_CXX_COMPILER variable is empty, therefore the --std=c++11 flag is not added properly to the CMAKE_CXX_FLAGS.

@tomluchowski seems to say that moving the project definition to the top broke the his buildsystem, but I would be more inclined to think that something is wrong on his end then. Projects should always be defined at the beginning of the CMakeLists.txt IMHO.

This pull request also adds an insignificant change that makes my life easier to compile OD on Mageia: the FIND_SFML_LIB_SUFFIX is now listed as a CMake argument, and the proper include dir is searched for (Mageia packaged SFML2 so that it can be co-installed with SFML, hence some tricks).
> The previous cmake script made it so a lot of compilation warnings when inhibited. That's why we have so much of them now, but this is proving the improvements done by

I've not said it was because of akien's patch ;)
But there was so many that I even thought the compiler was crashed. Which was not the case since it compiled.
With the patch (after removing the unwanted flags), compilation seems to work and I definitely prefer showing the warnings as we should try to remove them when we can. The main problem for me is that the flag values are not displayed so they cannot be changed. I've not tried yet to change them to see what happens but it is not normal and it could hide a problem...