Compile with -Wall
Fix all warnings except for a missing type sig using base:Maybe