Lots of faffing - sorted immutability and how parents are told of replacement children.  Implementing abstract classes now...