Inicio da grande refatoracao
GAHHHH MUST CODIFICAR PSEUDO CODIGO
GAHHHH MUST CODIFICAR PSEUDO CODIGO MORE
...