code: def find(self, name, limit=None):
          
          if name == self.name:
              if limit is not None:
                  assert limit == 1
                  self.subdirs = []
              return self
          for subdir in self.subdirs:
              res = subdir.find(name, limit)
              if res is not None:
                  return res
          return None
docs: Find the named TemplateDir in the hierarchy