Don't hide errors when performing undo/redo ops

If the operations themselves return a promise ensure we end the promise
to not silence any errors.

This highlights the fact that we don't wait for the operations to
resolve their promised payload before performing the next operation.

I need to think that over some, but masking errors made for some
annoying debugging.