Add support for automatic event expiration

I'm opening the PR early to get some direction in case I'm going off rails here. My current thinking is:
* simple global param `data-expiration` that will apply to all tables
* if the param is present start a background goroutine for each table that continuously walks through all the objects and sweeps them for expired events one by one
So the intent is to only run it when the above loop deletes all events in that object. But the loop should stop if it hits newer events in which case key != nil.