something feels wonky about having this code here, and also a dedicated DeleteShimIfExistsWriter. It seems like we're in a side-effecty land where order matters instead of a "here is the target state, figure out how to get there" land? I don't understand all this yet though, reading on...