select (HTML::Selector)

    # File lib/action_controller/vendor/html-scanner/html/selector.rb, line 453
        def select(root)
          matches = []
          stack = [root]
          while node = stack.pop
            if node.tag? && subset = match(node, false)
              subset.each do |match|
                matches << match unless matches.any? { |item| item.equal?(match) }
              end
            elsif children = node.children
              stack.concat children.reverse
            end
          end
          matches
        end