Fatoração do Código e alguns testes unitários criados.