Deleting all of the records that end up reduced into one should delete the result record itself
Make it so reduce/unreduce can return null to indicate that a record should be deleted
Setting a value to null deletes it, so it must not appear in the enumeration results
SetValue(..., null) should delete the key