Refactoring Después de una evaluación interna se ha decidido refactorizar totalmente el proyecto, el codigo refactorizado se encuentra en el siguiente repositorio