You don't directly set a Dictionary, you set key/value pairs in a Dictionary. If the Dictionary doesn't exist it is created and the key/value pair added. If the Dictionary exists but the key is not present, the key/value pair is added. If the key already exists it is updated with the new value.

(This looks like it goes against the "You don't directly set a Dictionary", above. But you aren't -- you're setting the keys to null, effectively removing them, and KM garbage collects the empty Dictionary for you.)
I only stumbled across this when working on the above and looking for a way to reset the Dictionary between runs -- props to @kvanh for this post.
...and the Forum, and by simply messing around in KM trying to do things. I'm still with you in the 90% -- but working on it!