
This checkin is a refactoring of CellSelection both in BUI and in GUI.  The purpose is to restructure the code so that the CellSelection is shared between GUI and BUI and also to at least stub in some of the new behaviors that are needed to support setShouldUseEnhancedSelectionModel()

I have tried to add  //dmwCellSelection wherever I have changed existing code.   These comments will, of course, all need to be removed
There is also quite a bit of code that has been commented out.   These places will need to be cleaned up.  I left them in so everyone can understand (hopefully) what is being changed

I found a couple places in the existing code that appear to be bugs.  I added a comment of the form //dmwBugAlerts where there may be a bug.   I did not attempt to correct them but Aaron should probably take a look at each of these places to be sure they are not bugs

This code adds a few of the design concepts we discussed that are needed to support setShouldUseEnhancedSelectionModel().  In particular
   -- stubs out ability to highlight activeCell differently from other selectedCells
   -- adds method get/setShouldUseEnhancedSelectionModel stubbed out as far as IGridBase and IGridBaseBridge (still need to add to facades and to BBjGrid.java)
   -- causes code to behave differently if useEnhancedModel = true/false  In GUI that behavior diff is isolated in IGridFieldTable.   In BUI it is the difference is implemented by creating different instances of CellSelectionIF
   
I may have introduced a bug by commenting out m_specificCellSelectionKeypress.   Aaron and I can discuss that during a code review

I have tried to not introduce any new bugs.   But this needs to be reviewed by Aaron and it needs to be tested thoroughly.

But it compiles.   And the CellSelection is shared between BUI and GUI.   I have not run it.  I certainly have not tested it.  But it compiles. 


