I like your style, Mr. Kowalczyk :)
I agree, too. Deletion should not require a value. I like tuples as
much as the next guy... I just don't think this makes sense. Even that
the line of code could do an insert or a delete depending on the value
of a boolean variable could make code completely unreadable.
What if you want your key value to be nil.
E.g. the key is present, but with nil value?