Bug 174701 [Viewers] ViewerRow should be reused instead of connected to the Item
Currently we create a ViewerRow ver every Item we create this can degrade performance, we should cache the row and reuse it
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TableViewer.java
* wish to set selection more effeciently when using a ILazyContentProvider.
	 * </p>
	 * 
	 * @param selection
	 *            the new selection
	 * @param reveal
	 *            <code>true</code> if the selection is to be made visible,
	 *            and <code>false</code> otherwise
	 * @see Table#setSelection(int[])
	 * @see Table#showSelection()
	 */
	public void setSelection(ISelection selection, boolean reveal) {
		super.setSelection(selection, reveal);
	}
	
	protected ViewerRow getViewerRowFromItem(Widget item) {
		ViewerRow part = (ViewerRow) item.getData(ViewerRow.ROWPART_KEY);
		if (part == null) {
			part = new TableViewerRow(((TableItem) item));
		}
		return part;
	}
	
	/**
	 * Create a new row with style at index
	 * 
	 * @param style
	 * @param rowIndex
	 * @return ViewerRow
	 */