gcc compatibility edits by texus

Changes to make it compile-able with linux.

Full credits to texus from SFML forums, thanks a lot!
Minor fixes to code

Removal of bad code habits and stuff
Replacing [] arrays with std::arrays soon