Advanced storage: swap primary storage for apps

Advanced storage settings patch series:
[1/4] vold: allow swapped storage paths at vold init
      http://review.cyanogenmod.org/56515
[2/4] Advanced storage: vold swap storage paths
      http://review.cyanogenmod.org/56516
[3/4] storage: allow swapping primary storage for apps
      http://review.cyanogenmod.org/56950
[4/4] Advanced storage: swap primary storage for apps
      http://review.cyanogenmod.org/56951

This adds a new preference to Advanced storage settings to swap the
primary storage path used when applications call getExternalFilesDir().
Whereas the original vold swap trick cannot be used when primary
storage is emulated, this setting can be applied to either emulated
or non-emulated storage. Only one of the two primary storage swap
methods can be active at a time.

This option is currently restricted to a secondary storage device
located at /storage/sdcard1 to prevent swapping with not-so-permanent
devices like usbdisk.

The effect of this option can be verified by going to Settings > Apps
and swiping over to "ON SD CARD". The bar at the bottom of the screen
should have used/free spaces corresponding to /storage/sdcard1.

Inspiration for this storage swap method comes from Martin Meloun.

Change-Id: I5eb31735baeb8e356f94cc1b87fa9618023db8ce