this PR introduces an even counter. This is useful for UIs where realtime events from the queue are displayed. The counter is required so that the UI code can now if the current data it has from the queue is actually up-to-date. (Note the PR is not ready yet)