O projeto final do curso refatorado, com repositories e models.