diff --git a/tools/build/onos-package b/tools/build/onos-package
index afa9848..836ca9d 100755
--- a/tools/build/onos-package
+++ b/tools/build/onos-package
@@ -37,7 +37,17 @@
 cp -r $ONOS_ROOT/tools/package/debian $ONOS_STAGE/debian
 cp -r $ONOS_ROOT/tools/package/etc/* $ONOS_STAGE/$KARAF_DIST/etc
 
-# Patch-in proper Karaf version into the startup script.
+# Stage all builtin ONOS apps for factory install
+mkdir $ONOS_STAGE/apps
+find $ONOS_ROOT -name 'app.xml' | egrep -v '/src/test/|/target/|org\.foo\.' | \
+    xargs grep 'name=' | sed 's/<app name="//g;s/".*//g' | while read line; do
+        appxml=${line%:*}
+        app=${line#*:}
+        mkdir $ONOS_STAGE/apps/$app
+        cp $appxml $ONOS_STAGE/apps/$app/app.xml
+    done
+
+# Patch-in proper Karaf version into the startup script
 sed "s/\$KARAF_VERSION/$KARAF_VERSION/g" \
     $ONOS_ROOT/tools/package/bin/onos-service > bin/onos-service
 sed "s/\$KARAF_VERSION/$KARAF_VERSION/g" \
@@ -60,9 +70,9 @@
 perl -pi.old -e "s|^(featuresRepositories=.*)|\1,mvn:org.onosproject/onos-features/$ONOS_POM_VERSION/xml/features|" \
     $ONOS_STAGE/$KARAF_DIST/etc/org.apache.karaf.features.cfg 
 
-# Patch the Apache Karaf distribution file to load ONOS features
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui,onos-openflow"
-perl -pi.old -e "s|^(featuresBoot=.*)|\1,$ONOS_FEATURES|" \
+# Patch the Apache Karaf distribution file to load default ONOS boot features
+export BOOT_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui"
+perl -pi.old -e "s|^(featuresBoot=.*)|\1,$BOOT_FEATURES|" \
     $ONOS_STAGE/$KARAF_DIST/etc/org.apache.karaf.features.cfg
 
 # Patch the Apache Karaf distribution with ONOS branding bundle
diff --git a/tools/dev/bash_profile b/tools/dev/bash_profile
index 5acb19e..057e7d3 100644
--- a/tools/dev/bash_profile
+++ b/tools/dev/bash_profile
@@ -71,23 +71,32 @@
 alias sshctl='onos-ssh'
 alias sshnet='onos-ssh $OCN'
 
+
+# Sets the primary instance to the specified instance number.
+function setPrimaryInstance {
+    export OCI=$(env | egrep "OC[0-9]+" | sort | egrep OC${1:-1} | cut -d= -f2)
+    echo $OCI
+}
+
 # Applies the settings in the specified cell file or lists current cell definition
 # if no cell file is given.
 function cell {
     if [ -n "$1" ]; then
         [ ! -f $ONOS_ROOT/tools/test/cells/$1 ] && \
             echo "No such cell: $1" >&2 && return 1
-        unset ONOS_CELL ONOS_NIC ONOS_FEATURES ONOS_USER ONOS_GROUP
-        unset OCI OCN
+        unset ONOS_CELL ONOS_NIC ONOS_APPS ONOS_BOOT_FEATURES ONOS_USER ONOS_GROUP
+        unset OCI OCN OCT
+        unset ONOS_FEATURES # deprecated
         unset $(env | sed -n 's:\(^OC[0-9]\{1,\}\)=.*:\1 :g p')
         export ONOS_CELL=$1
         . $ONOS_ROOT/tools/test/cells/$1
+        setPrimaryInstance 1 >/dev/null
         cell
     else
         env | egrep "ONOS_CELL"
         env | egrep "OCI"
         env | egrep "OC[0-9]+" | sort
-        env | egrep "OCN"
+        env | egrep "OC[NT]"
         env | egrep "ONOS_" | egrep -v 'ONOS_ROOT|ONOS_CELL'
     fi
 }
@@ -97,18 +106,12 @@
 # Lists available cells
 function cells {
     for cell in $(ls -1 $ONOS_ROOT/tools/test/cells); do
-        printf "%-12s  %s\n" \
+        printf "%-16s  %s\n" \
             "$([ $cell = $ONOS_CELL ] && echo $cell '*' || echo $cell)" \
             "$(grep '^#' $ONOS_ROOT/tools/test/cells/$cell | head -n 1)"
     done
 }
 
-# Sets the primary instance to the specified instance number.
-function setPrimaryInstance {
-    export OCI=$(env | egrep "OC[0-9]+" | sort | egrep OC${1:-1} | cut -d= -f2)
-    echo $OCI
-}
-
 # Miscellaneous
 function spy {
     ps -ef | egrep "$@" | grep -v egrep
diff --git a/tools/test/bin/onos-config b/tools/test/bin/onos-config
index 082f506..178bd23 100755
--- a/tools/test/bin/onos-config
+++ b/tools/test/bin/onos-config
@@ -8,9 +8,11 @@
 
 remote=$ONOS_USER@${1:-$OCI}
 
-# Customize features
-export ONOS_FEATURES="${ONOS_FEATURES:-webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui,onos-openflow}"
+# ONOS boot features
+export ONOS_BOOT_FEATURES="${ONOS_BOOT_FEATURES:-webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui}"
 
+# ONOS builtin apps and providers ignited by default
+export ONOS_APPS="${ONOS_APPS:-openflow}"
 
 # Generate a cluster.json from the ON* environment variables
 CDEF_FILE=/tmp/${remote}.cluster.json
@@ -40,9 +42,14 @@
     echo "log4j.logger.com.hazelcast.cluster.impl.MulticastService= ERROR" \
         >> $ONOS_INSTALL_DIR/$KARAF_DIST/etc/org.ops4j.pax.logging.cfg
 
-    # Patch the Apache Karaf distribution file to load ONOS features
-    perl -pi.old -e \"s|^(featuresBoot=.*,management)(,webconsole,.*)|\1,$ONOS_FEATURES|\" \
+    # Patch the Apache Karaf distribution file to load ONOS boot features
+    perl -pi.old -e \"s|^(featuresBoot=.*,management)(,webconsole,.*)|\1,$ONOS_BOOT_FEATURES|\" \
         $ONOS_INSTALL_DIR/$KARAF_DIST/etc/org.apache.karaf.features.cfg
+
+    # Customize which builtin apps should be ignited
+    for app in $(echo $ONOS_APPS | tr ',' ' '); do
+        touch $ONOS_INSTALL_DIR/apps/org.onosproject.\$app/active
+    done
 "
 
 # Generate a default tablets.json from the ON* environment variables
@@ -52,4 +59,3 @@
 
 # copy tools/package/config/ to remote
 scp -qr ${ONOS_ROOT}/tools/package/config/ $remote:$ONOS_INSTALL_DIR/
-
diff --git a/tools/test/bin/onos-show-cell b/tools/test/bin/onos-show-cell
index 3b11a1d..f5c7572 100755
--- a/tools/test/bin/onos-show-cell
+++ b/tools/test/bin/onos-show-cell
@@ -51,5 +51,7 @@
     fi
 done
 echo "OCN=${OCN}"
+echo "OCT=${OCT}"
 echo "OCI=${OCI}"
-echo "ONOS_FEATURES=${ONOS_FEATURES}"
+echo "ONOS_APPS=${ONOS_APPS}"
+echo "ONOS_BOOT_FEATURES=${ONOS_BOOT_FEATURES}"
diff --git a/tools/test/cells/beast b/tools/test/cells/beast
index c3ed41e..aa34e51 100644
--- a/tools/test/cells/beast
+++ b/tools/test/cells/beast
@@ -1,7 +1,7 @@
-# Bare metal cluster
+# Bare metal cluster (7-node)
 
-# Use the 10G NIC for cluster communications
-export ONOS_NIC="192.168.200.*"
+# Use the 1G NIC for cluster communications
+export ONOS_NIC="10.254.1.*"
 
 # ONOS Test proxy
 export OCT=10.254.1.200
@@ -15,6 +15,4 @@
 export OC6=10.254.1.206
 export OC7=10.254.1.207
 
-export OCI=${OC1}
-
-export ONOS_FEATURES=webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-null
+export ONOS_APPS=null,intentperf
diff --git a/tools/test/cells/beast-1 b/tools/test/cells/beast-1
new file mode 100644
index 0000000..c6e45e4
--- /dev/null
+++ b/tools/test/cells/beast-1
@@ -0,0 +1,12 @@
+# Bare metal cluster (1-node)
+
+# Use the 1G NIC for cluster communications
+export ONOS_NIC="10.254.1.*"
+
+# ONOS Test proxy
+export OCT=10.254.1.200
+
+# Use the 1G NICs for external access
+export OC1=10.254.1.201
+
+export ONOS_APPS=null,intentperf
diff --git a/tools/test/cells/beast-3 b/tools/test/cells/beast-3
index c2db173..fc58137 100644
--- a/tools/test/cells/beast-3
+++ b/tools/test/cells/beast-3
@@ -1,7 +1,7 @@
-# Bare metal cluster
+# Bare metal cluster (3-node)
 
-# Use the 10G NIC for cluster communications
-export ONOS_NIC="192.168.200.*"
+# Use the 1G NIC for cluster communications
+export ONOS_NIC="10.254.1.*"
 
 # ONOS Test proxy
 export OCT=10.254.1.200
@@ -11,6 +11,4 @@
 export OC2=10.254.1.202
 export OC3=10.254.1.203
 
-export OCI=${OC1}
-
-export ONOS_FEATURES=webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-null
+export ONOS_APPS=null,intentperf
diff --git a/tools/test/cells/beast-5 b/tools/test/cells/beast-5
new file mode 100644
index 0000000..4734281
--- /dev/null
+++ b/tools/test/cells/beast-5
@@ -0,0 +1,16 @@
+# Bare metal cluster (5-node)
+
+# Use the 1G NIC for cluster communications
+export ONOS_NIC="10.254.1.*"
+
+# ONOS Test proxy
+export OCT=10.254.1.200
+
+# Use the 1G NICs for external access
+export OC1=10.254.1.201
+export OC2=10.254.1.202
+export OC3=10.254.1.203
+export OC4=10.254.1.204
+export OC5=10.254.1.205
+
+export ONOS_APPS=null,intentperf
diff --git a/tools/test/cells/beastMod b/tools/test/cells/beastMod
deleted file mode 100644
index b0c8a5a..0000000
--- a/tools/test/cells/beastMod
+++ /dev/null
@@ -1,18 +0,0 @@
-# Bare metal cluster with rearranged nodes
-
-# Use the 10G NIC for cluster communications
-export ONOS_NIC="10.254.1.*"
-
-# ONOS Test proxy
-export OCT=10.254.1.200
-
-# Use the 1G NICs for external access
-export OC1=10.254.1.207
-export OC2=10.254.1.202
-export OC3=10.254.1.203
-export OC4=10.254.1.204
-export OC5=10.254.1.206
-
-export OCI=${OC1}
-
-export ONOS_FEATURES=webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-null
diff --git a/tools/test/cells/cbench b/tools/test/cells/cbench
deleted file mode 100644
index 8601929..0000000
--- a/tools/test/cells/cbench
+++ /dev/null
@@ -1,8 +0,0 @@
-# Local VirtualBox-based single ONOS instance & ONOS mininet box
-
-export ONOS_NIC=192.168.56.*
-export OC1="192.168.56.103"
-export OCN="192.168.56.103"
-export OCI="${OC1}"
-
-export ONOS_FEATURES="webconsole,onos-api,onos-core-trivial,onos-cli,onos-openflow,onos-app-fwd"
diff --git a/tools/test/cells/ec2 b/tools/test/cells/ec2
index 204988e..ff7d08d 100644
--- a/tools/test/cells/ec2
+++ b/tools/test/cells/ec2
@@ -1,4 +1,4 @@
-# Bare metal cluster
+# EC2-based cluster (7-node)
 
 # Use the 10G NIC for cluster communications
 export ONOS_NIC="192.168.200.*"
@@ -15,6 +15,4 @@
 export OC6=192.168.200.106
 export OC7=192.168.200.107
 
-export OCI=${OC1}
-
-export ONOS_FEATURES=webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-null
+export ONOS_APPS=null,intentperf
diff --git a/tools/test/cells/local b/tools/test/cells/local
index 3972f1d..c99d250 100644
--- a/tools/test/cells/local
+++ b/tools/test/cells/local
@@ -4,6 +4,5 @@
 export OC1="192.168.56.101"
 export OC2="192.168.56.102"
 export OCN="192.168.56.103"
-export OCI="${OC1}"
 
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-openflow,onos-gui,onos-rest,onos-app-fwd,onos-app-proxyarp"
+export ONOS_APPS="openflow,fwd,proxyarp,mobility"
diff --git a/tools/test/cells/office b/tools/test/cells/office
index 87e06f8..dd8a5d5 100644
--- a/tools/test/cells/office
+++ b/tools/test/cells/office
@@ -1,7 +1,7 @@
-# ProxMox-based cell of ONOS instance; no mininet-box
+# ONLAB_OF Wifi ProxMox-based cell; single node; no mininet-box
 
 export ONOS_NIC="10.1.10.*"
 export OC1="10.1.10.223"
-export OCI="${OC1}"
 
-export ONOS_FEATURES="webconsole,onos-api,onos-core-trivial,onos-cli,onos-openflow,onos-app-fwd,onos-app-mobility,onos-app-gui,onos-app-proxyarp"
+export ONOS_APPS="openflow,fwd,proxyarp,mobility"
+
diff --git a/tools/test/cells/prox b/tools/test/cells/prox
index 28e073f..8af4198 100644
--- a/tools/test/cells/prox
+++ b/tools/test/cells/prox
@@ -4,6 +4,3 @@
 export OC1="10.1.9.94"
 export OC2="10.1.9.82"
 export OCN="10.1.9.93"
-export OCI="${OC1}"
-
-export ONOS_FEATURES=""
diff --git a/tools/test/cells/sdnip-pmox b/tools/test/cells/sdnip-pmox
index 9f66265..0329616 100644
--- a/tools/test/cells/sdnip-pmox
+++ b/tools/test/cells/sdnip-pmox
@@ -1,10 +1,8 @@
 # SDN-IP ProxMox cell
 
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-openflow,onos-app-config,onos-app-proxyarp,onos-gui,onos-rest"
-
 export ONOS_NIC=10.128.4.*
 export OC1="10.128.4.65"
 export OC2="10.128.4.66"
 export OC3="10.128.4.67"
 
-export ONOS_USER=sdn
+export ONOS_APPS="openflow,fwd,proxyarp,mobility,config,sdnip"
diff --git a/tools/test/cells/single b/tools/test/cells/single
index 3810482..19485a9 100644
--- a/tools/test/cells/single
+++ b/tools/test/cells/single
@@ -3,6 +3,5 @@
 export ONOS_NIC=192.168.56.*
 export OC1="192.168.56.101"
 export OCN="192.168.56.103"
-export OCI="${OC1}"
 
-export ONOS_FEATURES=webconsole,onos-api,onos-core-trivial,onos-cli,onos-rest,onos-openflow,onos-app-fwd,onos-app-proxyarp,onos-app-gui
+export ONOS_APPS="openflow,fwd,proxyarp,mobility"
diff --git a/tools/test/cells/single_optical b/tools/test/cells/single_optical
index 9eb613c..1785bfc 100644
--- a/tools/test/cells/single_optical
+++ b/tools/test/cells/single_optical
@@ -1,7 +1,7 @@
-# Local VirtualBox-based single ONOS instance & ONOS mininet box
+# Optical use-case VirtualBox-based single ONOS instance & ONOS mininet box
 
 export ONOS_NIC=192.168.56.*
 export OC1="192.168.56.101"
 export OCN="192.168.56.103"
 
-export ONOS_FEATURES=webconsole,onos-api,onos-core-trivial,onos-cli,onos-openflow,onos-app-fwd,onos-app-mobility,onos-app-gui,onos-app-optical
+export ONOS_APPS="openflow,fwd,proxyarp,mobility,optical"
diff --git a/tools/test/cells/tom b/tools/test/cells/tom
index cba30f3..a48933b 100644
--- a/tools/test/cells/tom
+++ b/tools/test/cells/tom
@@ -1,8 +1,7 @@
-# Thomas' VirtualBox-based single ONOS instance & ONOS mininet box
+# Thomas' VirtualBox-based 3 ONOS instances & ONOS mininet box
 
 export ONOS_NIC=192.168.56.*
 export OC1="192.168.56.11"
-export OCN="192.168.56.7"
-export OCI="${OC1}"
-
-export ONOS_FEATURES=webconsole,onos-api,onos-core-trivial,onos-cli,onos-rest,onos-gui,onos-openflow,onos-app-fwd,onos-app-proxyarp,onos-app-mobility
+export OC2="192.168.56.12"
+export OC3="192.168.56.13"
+export OCN="192.168.56.14"
diff --git a/tools/test/cells/tom3 b/tools/test/cells/tom3
deleted file mode 100644
index c209f8f..0000000
--- a/tools/test/cells/tom3
+++ /dev/null
@@ -1,10 +0,0 @@
-# Thomas' VirtualBox-based 3 ONOS instances & ONOS mininet box
-
-export ONOS_NIC=192.168.56.*
-export OC1="192.168.56.11"
-export OC2="192.168.56.12"
-export OC3="192.168.56.13"
-export OCN="192.168.56.14"
-export OCI="${OC1}"
-
-unset ONOS_FEATURES
diff --git a/tools/test/cells/tomx b/tools/test/cells/tomx
index 700be43..48018de 100644
--- a/tools/test/cells/tomx
+++ b/tools/test/cells/tomx
@@ -1,13 +1,7 @@
-# Local VirtualBox-based ONOS instances 1,2,3 & ONOS mininet box
+# Office ProxMox ONOS instances 1,2,3 & ONOS mininet box
 
 export ONOS_NIC=10.128.11.*
 export OC1="10.128.11.1"
 export OC2="10.128.11.2"
 export OC3="10.128.11.3"
 export OCN="10.128.11.4"
-
-export OCI="${OC1}"
-export OCT="${OC1}"
-
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui,onos-openflow"
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-rest,onos-gui,onos-null"
diff --git a/tools/test/cells/triple b/tools/test/cells/triple
index cd7f174..5a929f9 100644
--- a/tools/test/cells/triple
+++ b/tools/test/cells/triple
@@ -5,6 +5,5 @@
 export OC2="192.168.56.102"
 export OC3="192.168.56.104"
 export OCN="192.168.56.103"
-export OCI="${OC1}"
 
-export ONOS_FEATURES="webconsole,onos-api,onos-core,onos-cli,onos-openflow,onos-gui,onos-rest,onos-app-fwd,onos-app-proxyarp"
+export ONOS_APPS="openflow,fwd,proxyarp,mobility"
