add -Wall flag and fix some warnings it reveals
make it actually Strict