Adds photos to a-z list.

The implementation is meant to keep scrolling the list as smooth as
possible. Photo loading is only done once the list stops scrolling, at
which point, all visible photos are loaded and stuck in a cache.
diff --git a/src/com/android/contacts/ContactEntryAdapter.java b/src/com/android/contacts/ContactEntryAdapter.java
index 11c862a..ae373cf 100644
--- a/src/com/android/contacts/ContactEntryAdapter.java
+++ b/src/com/android/contacts/ContactEntryAdapter.java
@@ -35,41 +35,43 @@
     public static final String[] AGGREGATE_PROJECTION = new String[] {
         Aggregates.DISPLAY_NAME, // 0
         Aggregates.STARRED, //1
-        Data._ID, //2
-        Data.CONTACT_ID, //3
-        Contacts.PACKAGE, //4
-        Data.MIMETYPE, //5
-        Data.IS_PRIMARY, //6
-        Data.IS_SUPER_PRIMARY, //7
-        Data.DATA1, //8
-        Data.DATA2, //9
-        Data.DATA3, //10
-        Data.DATA4, //11
-        Data.DATA5, //12
-        Data.DATA6, //13
-        Data.DATA7, //14
-        Data.DATA8, //15
-        Data.DATA9, //16
-        Data.DATA10, //17
+        Aggregates.PHOTO_ID, //2
+        Data._ID, //3
+        Data.CONTACT_ID, //4
+        Contacts.PACKAGE, //5
+        Data.MIMETYPE, //6
+        Data.IS_PRIMARY, //7
+        Data.IS_SUPER_PRIMARY, //8
+        Data.DATA1, //9
+        Data.DATA2, //10
+        Data.DATA3, //11
+        Data.DATA4, //12
+        Data.DATA5, //13
+        Data.DATA6, //14
+        Data.DATA7, //15
+        Data.DATA8, //16
+        Data.DATA9, //17
+        Data.DATA10, //18
     };
     public static final int AGGREGATE_DISPLAY_NAME_COLUMN = 0;
     public static final int AGGREGATE_STARRED_COLUMN = 1;
-    public static final int DATA_ID_COLUMN = 2;
-    public static final int DATA_CONTACT_ID_COLUMN = 3;
-    public static final int DATA_PACKAGE_COLUMN = 4;
-    public static final int DATA_MIMETYPE_COLUMN = 5;
-    public static final int DATA_IS_PRIMARY_COLUMN = 6;
-    public static final int DATA_IS_SUPER_PRIMARY_COLUMN = 7;
-    public static final int DATA_1_COLUMN = 8;
-    public static final int DATA_2_COLUMN = 9;
-    public static final int DATA_3_COLUMN = 10;
-    public static final int DATA_4_COLUMN = 11;
-    public static final int DATA_5_COLUMN = 12;
-    public static final int DATA_6_COLUMN = 13;
-    public static final int DATA_7_COLUMN = 14;
-    public static final int DATA_8_COLUMN = 15;
-    public static final int DATA_9_COLUMN = 16;
-    public static final int DATA_10_COLUMN = 17;
+    public static final int AGGREGATE_PHOTO_ID = 2;
+    public static final int DATA_ID_COLUMN = 3;
+    public static final int DATA_CONTACT_ID_COLUMN = 4;
+    public static final int DATA_PACKAGE_COLUMN = 5;
+    public static final int DATA_MIMETYPE_COLUMN = 6;
+    public static final int DATA_IS_PRIMARY_COLUMN = 7;
+    public static final int DATA_IS_SUPER_PRIMARY_COLUMN = 8;
+    public static final int DATA_1_COLUMN = 9;
+    public static final int DATA_2_COLUMN = 10;
+    public static final int DATA_3_COLUMN = 11;
+    public static final int DATA_4_COLUMN = 12;
+    public static final int DATA_5_COLUMN = 13;
+    public static final int DATA_6_COLUMN = 14;
+    public static final int DATA_7_COLUMN = 15;
+    public static final int DATA_8_COLUMN = 16;
+    public static final int DATA_9_COLUMN = 17;
+    public static final int DATA_10_COLUMN = 18;
 
     protected ArrayList<ArrayList<E>> mSections;
     protected LayoutInflater mInflater;