Much work on bug #8365.  Most of the system has now been rebuilt.