Changed unique pointers to shared for the transition
Added functions, includes and a member
Implemented functions