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).
Hi guys, :)

> Concerning the -g and -O2 flags, they should not be set in the global configuration. CMake will add them himself when you choose the executable type you want to generate (Debug, Release, ReleaseWithDbgInfo - pretty explicit)

This is true. @akien-mga proposed opt flags are the ones used usually to create a ReleaseWithDebugInfo release type, which the best binary type used on open source to get more precise feedback on crashes, while maintaining correct performance.

That said, this is right, we should first set the default release type, and then set compilation and linking flags based upon this, per compiler & platform.
Thus, I'm also against setting default flags for everything.

That said, @akien-mga I do think you don't have to fix everything at once and if you can setup a correct list of IF() permitting to clearly view the compiler flags set per compiler and release type, we'll be able to optimize them little by little. :)

> EDIT : It worked after all. There are loads of warnings but I could compile and run the game. I will make some more tests tomorrow.

@hwoarangmy 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 @akien-mga 's work. :)
We should fix those warnings in the code, for the bugs aren't in the CMake script.

Best regards,