add vim files to gitignore
review unit tests and fix validators accordingly

From now one any change in the model should mean a change in the unit
tests first (TDD).
increase coverage to 100% for models (total coverage 74.36%)