Using smart pointers

J'ai remplacé les pointeurs nus dans les classes qui les utilisaient par des smarts pointers.
Il y a truc un peu pénible avec les unique pointers qui demandent un type de deleter pour certaines classes (dont le destructeur est privé). Ca fait un peu de lourdeur d'écriture, je vais essayer d'alléger ça si possible.