using unique_ptr more and starting to implement the necessities for rigids