code: def pathparts(self):
          
          try:
              parts = self.parent.pathparts()
              parts.append(self.name)
              return parts
          except AttributeError:
              return []
docs: A list of the parts of the path, with the root node returning
          an empty list.