Restructuration of the project. keeping same functionality.