Fail if class names are using a dangerous name

Fail if class names are using a dangerous name (in projects, models and migrations). Tests for migrations and project are failing though. Need to check that. #957.

@ujifgc this is a more agressive approach than #1008 as it fails. It could just warn too or perhaps we add a --force-name flag? It also takes into account project and migrations names.