improve system for etag saving

One should not rely on subclasses calling the right method.
refactor the no-old-events thing

It would be silly to require every script that's using my classes to do
the same thing time and again.