Move LauncherApplication's state and code to LauncherAppState.

This removes Launcher's static data and other state out of
the Application object. Now LauncherApplication (extends
Application) exists only to instantiate LauncherAppState.

Change-Id: I4e323bd78b77536b92054105536a55c0c2c19ba8
diff --git a/src/com/android/launcher3/Folder.java b/src/com/android/launcher3/Folder.java
index 07c9400..7b15e9e 100644
--- a/src/com/android/launcher3/Folder.java
+++ b/src/com/android/launcher3/Folder.java
@@ -135,7 +135,7 @@
         super(context, attrs);
         setAlwaysDrawnWithCacheEnabled(false);
         mInflater = LayoutInflater.from(context);
-        mIconCache = ((LauncherApplication)context.getApplicationContext()).getIconCache();
+        mIconCache = (LauncherAppState.getInstance()).getIconCache();
 
         Resources res = getResources();
         mMaxCountX = mMaxVisibleX = res.getInteger(R.integer.folder_max_count_x);