A clean up release including a lot of internal rework and some
minor evolution of public APIs. Also some new Swing functionality
including addition of SPasswordField and SSlider.
* Added SSlider.
* Added SPasswordField.
* Added ability to centre SwingViews on the screen: see SwingView.setViewBounds(CENTRED).
* SListModel binds to properties not just models, and now handles Object[] too.
* SSingleListSelectionModel handles validation failures.
* Added unit tests for SRadioButton.
* Tidied SList impl including proper handling of read-only selection.
* Rationalised ViewContext by removing ViewContextFactory. Note: public API changes.
* Rationalised Controller chain of responsibility management. Note: public API changes.
* Tidy up of Controller/BasicController unit tests.
* Added ability to do an internal servlet redirect using ScopeServlet.redirect().
* Added DynamicInvokable for BeansActionManager.
* Deprecated SwingView.setLastShownBounds and getLastShownBounds. Use setViewBounds etc.
* Tidy up of StringConvertor internals.
* Tidy up of Beans ModelManager internals.
* Fixed bug in ScopeServlet that prevented webapps with multiple servlets from working.
* Added initial cut of servlet demonstrating form entry validation: demonstrates need for better exception handling.
* Various other bits of tidy up.