Scrapping the preSave/postSave system and instead offering an overridable save method and an easily hookable internal method that does the heavy lifting.