Started working on SmartPtr system - not completely compiling yet though