Add -Wswitch-default to compile flags
Add -Wswitch-default to compile flags as suggested by #5.
In order to not introduce new warnings, the two first commits add the needed default switch cases.
The first commit moves code to inside the default case, where it made sense. The second commit adds error messages to default cases to report invalid values. The third and final commit adds the compile flag.
All tests passed.