recovery: Revenge of MiniVold

 * Vold has been refactored to be friendly to an environment such as
   recovery. Using Vold will eliminate many hacks and add previously
   unavailable features.
 * Link with libminivold and create a pseudo-binary to launch as a
   service in recovery.
 * Libvoldclient is an event-driven client for controlling the daemon.
 * Handles device hotplug and automatic mounting, if desired.
 * Manages USB storage
 * Can check and format volumes using any supported filesystem
 * Dynamically generate all storage paths
 * Dynamically refresh menus affected by storage changes
 * Fixed wall-of-compile-warnings and const-correctness in extendedcommands.c
 * Misc cleanups
 * Say goodbye to "apply /sdcard/update.zip". You have served us well.

Change-Id: I13a3d72493f8fce7c19f192f9e94ad22cb60a2d2
recovery: Don't enable UMS function unless needed

 * This causes problems with some hosts. Only enable the composition if
   the user actually turns UMS on.

Change-Id: I18b109a3416d55ef711d346685d46a93851da332
recovery: Don't automount external storage at startup

 * Do it for hotplug and on-demand only.

Change-Id: I9c0ca96203a8ff1f16fa42e31f426cd25bdaba1d
recovery: Add sdcard daemon

 * Our custom ext4 support for sdcards needs it.

Change-Id: Ie1c22c1d6a3255cbe3a7ff3c072243f4a5461a17
Merge remote-tracking branch 'github/cm-10.2' into mackay-cm102

Conflicts:
	extendedcommands.c
	recovery.c

Change-Id: I41568b317c3118338a15b14ca890ef8b6d0270d3
recovery: Support for compressed backups

 * Systems are getting quite large nowadays, and performing backups
   without using compression is wildly inefficient. A good compression
   algorithm also gives us a big speedup on backup and restore times since
   the process is entirely I/O bound.
 * Bring in pigz (via libminipigz), which is a multithreaded version of
   gzip and pipe tar backups and restores thru it.
 * Autodetect compressed images where appropriate, and add a menu option
   to select the compressed format by default.
 * Also fixed various trivial warnings and const-correctness issues.

Comparison on my Flo device right now:

Uncompressed:
  1868512   2013-08-24.07.10.08

Compressed:
  1149300   2013-08-24.06.51.14

Change-Id: I55025c993662142f5b647e600daf6885f9be6667