Fixed numerous warnings.
Made implicit casts explicit when necessary.
Renamed CMake function SUPPRESS_VC8_DEPRECATED_WARNINGS to SUPPRESS_VC_DEPRECATED_WARNINGS and extended it with D_SCL_SECURE_NO_WARNINGS.
SUPPRESS_VC_DEPRECATED_WARNINGS is called from the topmost CMakeLists.txt now.
Removed GCC visibility pragmas since that problem is already fixed through compiler flags.
Removed unused variables.
Structs are now forward declared as structs consistently.
NOMINMAX macro doesn't get redefined.
All code paths return a value now when necessary.
Removed C&P errors that where overseen cause they were interpreted as labels or suffixes by the compiler.