def table(name, identifier={:index => 0}, &block)
      standard_methods(name, identifier, 'table_for', &block)
      define_method(name) do
        return platform.table_text_for identifier.clone unless block_given?
        self.send("#{name}_element").text
      end
    end
def table(name, identifier={:index => 0}, &block)
      standard_methods(name, identifier, 'table_for', &block)
      define_method(name) do
        return platform.table_text_for identifier.clone unless block_given?
        self.send("#{name}_element").text
      end
    end
adds three methods - one to return the text for the table, one
 to  retrieve the table element, and another to
 check the table's existence.

 @example
   table(:cart, :id => 'shopping_cart')
   # will generate a 'cart', 'cart_element' and 'cart?' method

 @param [Symbol] the name used for the generated methods
 @param [Hash] identifier how we find a table.
 @param optional block to be invoked when element method is called