Add -Wall & -Wextra, fix most of the new warnings