Refactor and update specs for PartialCommitWorker

I wanted to include some additional specs with the new logic around amending, but ended up refactoring and adding more specs overall.