add class CheckPointer, update INode and DirTree to support checkpoint, using visitor pattern