Added a real uniqueness check on compound fields, comparing compound values as
sets of child values -- all must match for the 2 compounds to be declared
"equal". In real life application - when comparing 2 date ranges, both ends
must match.