Dedup NANPA numbers

Reverts changes from Bug 5779336 that stopped using libphonenumber for
detecting dups, although keep matching as strict except when one number
begins with +1, in which case collapse. Change Collapser to allow
preferred collapse direction.

Bug:7519057
Change-Id: Ib8ba6da611638d05781ed4363d71bc2628d907b7
diff --git a/src/com/android/contacts/common/Collapser.java b/src/com/android/contacts/common/Collapser.java
index d586add..39ae681 100644
--- a/src/com/android/contacts/common/Collapser.java
+++ b/src/com/android/contacts/common/Collapser.java
@@ -37,7 +37,7 @@
      * can be used for example to collapse similar contact data items into a single item.
      */
     public interface Collapsible<T> {
-        public boolean collapseWith(T t);
+        public void collapseWith(T t);
         public boolean shouldCollapseWith(T t);
     }
 
@@ -61,6 +61,10 @@
                         if (iItem.shouldCollapseWith(jItem)) {
                             iItem.collapseWith(jItem);
                             list.set(j, null);
+                        } else if (jItem.shouldCollapseWith(iItem)) {
+                            jItem.collapseWith(iItem);
+                            list.set(i, null);
+                            break;
                         }
                     }
                 }