enabled all compiler warnings as errors and corrected them

summary of types of warnings corrected:
- incorrect return type on error list move column function
- unused function arguments
- order of class member initializations
- missing member initializers on table entries
- enumeration values not handled in switch statements
- suggest parentheses around expressions with operators often confused