More consistent shift click behaviour

As mentioned in #112 i added more consistent behaviour for shift selection when rowBasedSelection is used. Please especially review #L7400.

If a complete row is excluded from selection (all its cells are excluded) it is no longer returned when using Range.toRows(). Does this fix a bug or break a feature when using cell range selection?