Docs: Add API documentation for the column() and columns() methods and
their children
Api: table().header() and table().footer() methods for naming consistency

- The columns() methods have header() and footer() children to get the
  header and footer cells for the columns. For naming consistency the
  table() methods should be named likewise
Api fix - cache() method should look for 'search' as the passed in
parameter
Api - columns: Corrections found durating documentation:

- columns().cache() should check for the parameter 'search' for naming
  consistency

- Plural error on column().nodes()

- Change column.index() fromIndex/toIndex to fromData/toData - its an
  index be it data or visible, so the old method was meaningless