Fix AbstractSelect to work with new RangeController.

- Depends on frb#31 and frb#32.
- Adds some new tests and makes existing ones pass under the new restriction that RangeController#selection must be modified in-place.