thing = {
mutable things = [];
return function thing(t, invalidation) {
const {description} = t;
mutable things = mutable things.concat(t);
const element = html`<div>Thing ${description}</div>`;
if (invalidation === undefined) invalidation = disposal(element);
invalidation.then(() => mutable things = mutable things.filter(o => o !== t));
return element;
};
}