[TASK] consolidate transaction logic

Major refactor of the way transactions are submitted
I saw this in https://github.com/jsdoc3/jsdoc/issues/260#issuecomment-11117889