cleanup
factor out the 'digest' property to a 'Persistable' api interface