Serious work on the code structure and functionnalities