Implement at-least-once semantics.

This one can cope with the server "crashing" and then coming back.