Accessibility cleanup
This branch is mostly a code reorganisation and clean up to minimise the delta when we stop using ATK.
Widget classes either update the accessible state directly, or the accessible objects watch only the state that they are interested in.
The various accessible implementations have been simplified, and some cruft (like ATK registries) has been dropped.