Improve CardsDataSource & DataGrid tests

The overall performance of CardsDataSource -- loading, paging stutter
and consistency of FPS -- has been improved by a factor of two by
updating only the row offsets that are necessary within the applicable
methods (::set_page, ::insert_card, etc).

* dataview.rml: Break up 'card' col field into three; 'available',
'id', 'name'. This allows for much better management; use 'available'
for marking of card text gray when applicable (goodbye ::on_rowupdate
in the test).

* CardsDataSource: Add support for partial pages; this allows us to
arbitrarily insert & remove cards at will, with automatic refreshing
of the internal rows -- with respect to a customizable number of cards
per page.

* libRocketDataGridTest: Remove on_mousescroll event listener &
function.
* libRocketDataGridTest: Use on_keydown only for paging functionality.
* libRocketDataGridTest: Finish implementing proper multi-card
selection.
* libRocketDataGridTest: Introduce synthesized events for
UIDataViewList test; these aid automating a large portion of this
overall test case.

* UIDataViewList: Remove selection getter & setter; this is now
integrated into CardsDataSource (think: application-specific).