def add_td_to_cells(row, col, td, tr_format, cells)
      found = cells.find { |cell| cell[:row] == row && cell[:col] == col}
      unless found 
        td_format = tr_format.merge(css.format_from_node(td))
        cells << { 
          row:    row, 
          col:    col, 
          value:  td.text.strip, 
          format: td_format, 
          path:   td.css_path 
        } 
      else
        add_td_to_cells(row, col + 1, td, tr_format, cells)
      end
    end
def add_td_to_cells(row, col, td, tr_format, cells)
      found = cells.find { |cell| cell[:row] == row && cell[:col] == col}
      unless found 
        td_format = tr_format.merge(css.format_from_node(td))
        cells << { 
          row:    row, 
          col:    col, 
          value:  td.text.strip, 
          format: td_format, 
          path:   td.css_path 
        } 
      else
        add_td_to_cells(row, col + 1, td, tr_format, cells)
      end
    end
TODO Document