updates to the way bdls save, update, and read