Code Reorganization

Moving to a more composition oriented approach to material design

NB : Machine forced reboot, partial commit