The storedata() method in the CMLCoreModule calls storeAtomData() and storeBondData() to configure the CDK molecule with the read in atom/bond data. Both methods used to call newAtomData() and newBondData() at the end of the store methods, resetting all variables. This behavior makes extending/overriding the methods counter intuitive in custom CML conventions.
Moving the newAtom/BondData() methods outside the storeAtom/BondData() methods ensures that the methods only do what the methods names say and enable usage of the methods in custom conventions.
Looks good. I'm happy if this makes your customization easier.
Applied and pushed to master.