much better logging and assert implementation (all platforms)
Implemented proper build configuration for debug and release builds.
All platforms except emscripten now treat warning as error.