DexOpt anything in /system on /cache

Allow system property to disable use of /cache for dexfiles.

(manually cherry-picked commit 15d27bbe10e307136e081bedb7cf25131896f1cb)
dvm: Bring back the ANDROID_DATA override

This got broken by the split-cache patch, and it's impacting the
CTS vm unit. Fixit.

Change-Id: I602824afef19c92a4d2c1702d10c8f0315277227
libdex: Invert the default for dexopt-on-cache

Credit: CM was getting a bad object for this cherry-pick for some reason
The growth of /system apps and total /data space are making this
device-breaking (insufficient space to dexopt everything to
/cache), pointless (/data has more than enough room to hold
the cache), and in some cases, both.
The default behavior is now the same as mainline Android's: dexopt
everything to /data. Set dalvik.vm.dexopt-data-only=0 to change
that and dexopt /system apps to /cache. If you do that, make sure
your /cache can accomodate double the size of the dex classes in
system, since in some extreme cases that has been observed during
dex2oat