Ensure good code practices by appropriate compiler warnings.
Compiler flags are mostly lifted from here: http://blog.httrack.com/blog/2014/03/09/what-are-your-gcc-flags/
Long-term goal should be -werror enabled (no warnings permitted at all).