Add EventQueue and refactor router frontend to use client/cache

You can't guarantee that a consumer actually processed the event, ever.  The point is to get the final state that the object was in _in the store_ before it was deleted.  Good question.