mon/Paxos: move post-commit finish work into commit_finish()
The main change here is that we are merging the singleton and clustered
finish code together. This is mostly a code shuffle, except for one
semantic change: we now trigger the commit waiters before finish_round()
in the singleton case, whereas before we did not. I don't think there
was a specific reason why it differed from the clustered case.