I think the list part is implemented in StashCollection.

At first glance, `State` looks like an enum or something. How about `Changes`?