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
Yup, the goroutine management is still kinda up in the air. It's not clear to me how I'm going to deal with tables being created and deleted, for example.