Handle top-level assoc/dissoc correctly (or at least better)