Enabled compiler warnings
Enabled compiler warnings

Set the warning level to W4 for MSVC, enable multiple warnings for GCC and Clang.
Treat warnings like errors.
Disable warning C4996 when compiling with MSVC.

ErwinJanssen/elegan-c,VanJanssen/elegan-c,VanJanssen/safe-c