envsetup: new function cmka

- The build system adds a clean-<module> target
  for each module / package.
- This utilizes that and cleans and builds using mka.
- If no argument is supplied, it runs "mka clean".
- If argument is (bacon|otapackage|systemimage), it
  runs installclean.

Change-Id: I582ac2f92df3278c41c254c73e9c02ad7f406851
(cherry picked from commit eb74c2f2b9bb708e77edfdbb8ba0d0b716fef2fc)
(Also sneak in another minor change, a help entry for mkap)
diff --git a/envsetup.sh b/envsetup.sh
index 2796340..db0ab18 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -27,6 +27,8 @@
 - aospremote: Add git remote for matching AOSP repository
 - cafremote: Add git remote for matching CodeAurora repository.
 - mka:      Builds using SCHED_BATCH on all processors
+- mkap:     Builds the module(s) using mka and pushes them to the device.
+- cmka:     Cleans and builds using mka.
 - reposync: Parallel repo sync using ionice and SCHED_BATCH
 - repopick: Utility to fetch changes from Gerrit.
 - installboot: Installs a boot.img to the connected device.
@@ -1995,6 +1997,26 @@
     esac
 }
 
+function cmka() {
+    if [ ! -z "$1" ]; then
+        for i in "$@"; do
+            case $i in
+                bacon|otapackage|systemimage)
+                    mka installclean
+                    mka $i
+                    ;;
+                *)
+                    mka clean-$i
+                    mka $i
+                    ;;
+            esac
+        done
+    else
+        mka clean
+        mka
+    fi
+}
+
 function reposync() {
     case `uname -s` in
         Darwin)