Refactored the structure of the code base in order to be more structured into packages.