add the intrusive_ptr.h to replace the base.h