I have a use case where I need to get the value stored in the map, and depending on the value I might insert (if it didn't exist already), update, or remove it entirely. Currently this isn't possible atomically, but it's not hard to implement and then Upsert and RemoveCb can be re-implemented to just call UpsertOrRemove.