Updates to ledger publication engine

Clean up the publication engine, add inline comments, add information to README.md file, make two tiny functional changes.