def add_vertical(str, value)
      node = nil
      str.each_char { |c|
        if (node == nil)
          node = self.add_horizontal_char(c)
        elsif (node.down != nil)
          node = node.down.add_horizontal_char(c)
        else
          node.down = Node.new(c, node)
          node = node.down
        end
      }
      node.value = value
    end
def add_vertical(str, value)
      node = nil
      str.each_char { |c|
        if (node == nil)
          node = self.add_horizontal_char(c)
        elsif (node.down != nil)
          node = node.down.add_horizontal_char(c)
        else
          node.down = Node.new(c, node)
          node = node.down
        end
      }
      node.value = value
    end
Add the given String str and value vertically to this node, by adding or finding each character
 horizontally, then stepping down and repeating with the next character and so on, writing the
 value to the last node.