lib: Add missing cases in switch statements.

These were being hidden by misguided use of the dangerous
-Wswitch-default flag.
lib: Remove -Wswitch-default.

This warning is actively dangerous.  Because it forces you to use a
'default:' case in every switch statement, it means you can no longer
detect missing cases in enums.