Allow for other actions besides routing

Tabs can now be configured to respond and act in other ways than
routing.
The tabs configuration has been moved to the view,
since it mostly deals with presentation matters.
The controller part of the tabs deals with responding to changes in
tabs, either originating internally or from the UI.
Cleared a left-over console.log
First submit of datatable component
Added more features

Added:
on cell click handler
highlighting of sorted column
width and class attributes for columns
Set the context of the onclick listener to that of the datatable
Added readme and component dependencies
Added cell formatter and better width specs

Added formatter property to the column definition.
Widths for the table and the columns can be given in pixels or CSS width
spec
Datatable data property can now receive a promise as returned
by m.request.
The cell formatter can now change the TD attributes.
Formatter is called in the context of the Datatable controller
Resynching with the upstream after canceling pull request
Test to avoid refredrawing outside of the table
Avoid rendering outside the table when not needed

Finally made it
Added a little description for the user
Changed some names, added a record-id and a few more

The onclick configuration option is now onCellClick to tell it appart
from the raw DOM event.
A recordId configuration attribute has been added to store the
primary id of each record in each row.
ClassNames for columns are now applied to header rows as well as data
cells.
Added one more check to the detection of clicks on the sort icon.
Change some internal (non-public) names which might have been confusing.
Merge pull request #5 from Satyam/datatable

Datatable merged