def leaf_for_path?(path)
      return false unless path_prefix_of?(path)
      next_path_segment = (path - self.path).first
      return false if next_path_segment.nil?
      return !children.detect {|i| i.name == next_path_segment}
    end
def leaf_for_path?(path)
      return false unless path_prefix_of?(path)
      next_path_segment = (path - self.path).first
      return false if next_path_segment.nil?
      return !children.detect {|i| i.name == next_path_segment}
    end
returns true if this menu item is the terminus menu item for path.
 (meaning that there are no children that match more path segments)