fix clean_worker to respect expiration timestamps

* spec must be passed as a positional arg to collection.remove
* otherwise, passing a kwarg removes EVERYTHING from the collection, i.e. each time cleanup_worker was run, it would wipe whole collection!

fixes issue #4082