repopick: fix patches that reference paths that don't exist

  * if a specified changeset referenced a path that did not exist or
    was not yet checked out, repopick would attempt to apply the
    patch to the wrong directory
  * also, cache the result of 'repo list'--no need to run it for
    every changeset

Change-Id: Ibc6a1d8cc1e861fc6c0e2ecac45e9d877d31c35f
envsetup: Fix installrecovery for new fstab format

Change-Id: I26ab441c28350cce70bb976b249b16c6b83ab8da
build: Cleanup CPU-specific optimizations

 * TARGET_ARCH_CPU_VARIANT was a Linaro thing. Now that Android
   introducted TARGET_CPU_VARIANT, we should use this instead.
 * Added CFLAGS for Krait and Scorpion after the cleanup.

Change-Id: Iafb40ecefa353a1169c22601be4ce80069c3f587
Merge branch 'cm-10.2' of https://github.com/CyanogenMod/android_build into jb43