turn on strict, warnings and fix errors