Merge remote-tracking branch 'upstream/master'
diff --git a/build_lxc.sh b/build_lxc.sh
index b5de232..c1ab995 100755
--- a/build_lxc.sh
+++ b/build_lxc.sh
@@ -55,8 +55,8 @@
     # trigger the initial debootstrap
     lxc-create -n $CONTAINER -t natty -f $LXC_CONF
     chroot $CACHEDIR apt-get update
-    chroot $CACHEDIR apt-get install -y `cat apts/* | cut -d\# -f1 | egrep -v "(rabbitmq|libvirt-bin|mysql-server)"`
-    chroot $CACHEDIR pip install `cat pips/*`
+    chroot $CACHEDIR apt-get install -y `cat files/apts/* | cut -d\# -f1 | egrep -v "(rabbitmq|libvirt-bin|mysql-server)"`
+    chroot $CACHEDIR pip install `cat files/pips/*`
     git clone https://github.com/cloudbuilders/nova.git $CACHEDIR/opt/nova
     git clone https://github.com/cloudbuilders/openstackx.git $CACHEDIR/opt/openstackx
     git clone https://github.com/cloudbuilders/noVNC.git $CACHEDIR/opt/noVNC
diff --git a/build_nfs.sh b/build_nfs.sh
index 6509011..180a6e5 100755
--- a/build_nfs.sh
+++ b/build_nfs.sh
@@ -13,8 +13,8 @@
     debootstrap natty proto
     cp files/sources.list proto/etc/apt/sources.list
     chroot proto apt-get update
-    chroot proto apt-get install -y `cat apts/* | cut -d\# -f1 | egrep -v "(rabbitmq|libvirt-bin|mysql-server)"`
-    chroot proto pip install `cat pips/*`
+    chroot proto apt-get install -y `cat files/apts/* | cut -d\# -f1 | egrep -v "(rabbitmq|libvirt-bin|mysql-server)"`
+    chroot proto pip install `cat files/pips/*`
     git clone https://github.com/cloudbuilders/nova.git proto/opt/nova
     git clone https://github.com/cloudbuilders/openstackx.git proto/opt/openstackx
     git clone https://github.com/cloudbuilders/noVNC.git proto/opt/noVNC
@@ -34,14 +34,13 @@
 # copy kernel modules
 cp -pr /lib/modules/`uname -r` $DEST/lib/modules
 
-# inject stack.sh files
-cp -r files $DEST/opt/files
 
 # copy openstack installer and requirement lists to a new directory.
 mkdir -p $DEST/opt
+
+# inject stack.sh and dependant files
+cp -r files $DEST/opt/files
 cp stack.sh $DEST/opt/stack.sh
-cp -r pips $DEST/opt
-cp -r apts $DEST/opt
 
 # injecting root's public ssh key if it exists
 if [ -f /root/.ssh/id_rsa.pub ]; then
diff --git a/apts/dash b/files/apts/dash
similarity index 100%
rename from apts/dash
rename to files/apts/dash
diff --git a/apts/general b/files/apts/general
similarity index 100%
rename from apts/general
rename to files/apts/general
diff --git a/apts/glance b/files/apts/glance
similarity index 100%
rename from apts/glance
rename to files/apts/glance
diff --git a/apts/keystone b/files/apts/keystone
similarity index 100%
rename from apts/keystone
rename to files/apts/keystone
diff --git a/apts/nova b/files/apts/nova
similarity index 100%
rename from apts/nova
rename to files/apts/nova
diff --git a/apts/preseed b/files/apts/preseed
similarity index 100%
rename from apts/preseed
rename to files/apts/preseed
diff --git a/pips/dash b/files/pips/dash
similarity index 100%
rename from pips/dash
rename to files/pips/dash
diff --git a/stack.sh b/stack.sh
index ebd8f02..93b665a 100755
--- a/stack.sh
+++ b/stack.sh
@@ -21,13 +21,13 @@
     fi
 fi
 
-# stack.sh keeps the list of **apt** and **pip** dependencies in files.  
-# Additionally we have a few config templates and other useful files useful 
-# installation.  They are needed to be located at ``apts``, ``files`` and 
-# ``pips`` in the ``DEVSTACK`` directory (next to this script).
-DEVSTACK=`pwd`
-if [ ! -d $DEVSTACK/apts ] || [ ! -d $DEVSTACK/files ] || [ ! -d $DEVSTACK/pips ]; then
-    echo "ERROR: missing devstack files - did you grab more than just stack.sh?"
+# stack.sh keeps the list of **apt** and **pip** dependencies in external 
+# files, along with config templates and other useful files.  You can find these
+# in the ``files`` directory (next to this script).  We will reference this 
+# directory using the ``FILES`` variable in this script.
+FILES=`pwd`/files
+if [ ! -d $FILES ]; then
+    echo "ERROR: missing devstack/files - did you grab more than just stack.sh?"
     exit 1
 fi
 
@@ -117,10 +117,10 @@
 MYSQL_PRESEED
 
 # install apt requirements
-sudo apt-get install -y -q `cat $DEVSTACK/apts/* | cut -d\# -f1 | grep -Ev "mysql-server|rabbitmq-server"`
+sudo apt-get install -y -q `cat $FILES/apts/* | cut -d\# -f1 | grep -Ev "mysql-server|rabbitmq-server"`
 
 # install python requirements
-sudo PIP_DOWNLOAD_CACHE=/var/cache/pip pip install `cat $DEVSTACK/pips/*`
+sudo PIP_DOWNLOAD_CACHE=/var/cache/pip pip install `cat $FILES/pips/*`
 
 # git clone only if directory doesn't exist already
 function git_clone {
@@ -164,7 +164,7 @@
 
 # Add a useful screenrc.  This isn't required to run openstack but is we do
 # it since we are going to run the services in screen for simple 
-cp $DEVSTACK/files/screenrc ~/.screenrc
+cp $FILES/screenrc ~/.screenrc
 
 ## TODO: update current user to allow sudo for all commands in files/sudo/*
 
@@ -208,7 +208,7 @@
     cd $DASH_DIR/openstack-dashboard
     
     # Includes settings for Nixon, to expose munin charts.
-    sudo cp $DEVSTACK/files/dash_settings.py local/local_settings.py
+    sudo cp $FILES/dash_settings.py local/local_settings.py
 
     dashboard/manage.py syncdb
 
@@ -216,12 +216,12 @@
     sudo mkdir -p $DASH_DIR/.blackhole
 
     ## Configure apache's 000-default to run dashboard
-    sudo cp $DEVSTACK/files/000-default.template /etc/apache2/sites-enabled/000-default
+    sudo cp $FILES/000-default.template /etc/apache2/sites-enabled/000-default
     sudo sed -e "s,%DASH_DIR%,$DASH_DIR,g" -i /etc/apache2/sites-enabled/000-default
 
-    # ``python setup.py develop`` left some files owned by root in ``DASH_DIR`` and
-    # others by the original owner.  We need to change the owner to apache so
-    # dashboard can run
+    # ``python setup.py develop`` left some files owned by root in ``DASH_DIR`` 
+    # and others are owned by the user you are using to run this script.  
+    # We need to change the owner to apache for dashboard to run.
     sudo chown -R www-data:www-data $DASH_DIR
 fi
 
@@ -271,7 +271,7 @@
     mysql -u$MYSQL_USER -p$MYSQL_PASS -e 'CREATE DATABASE glance;'
     # Copy over our glance-registry.conf
     GLANCE_CONF=$GLANCE_DIR/etc/glance-registry.conf
-    cp $DEVSTACK/files/glance-registry.conf $GLANCE_CONF
+    cp $FILES/glance-registry.conf $GLANCE_CONF
     sudo sed -e "s,%SQL_CONN%,$BASE_SQL_CONN/glance,g" -i $GLANCE_CONF
 fi
 
@@ -367,11 +367,11 @@
 
     # FIXME (anthony) keystone should use keystone.conf.example
     KEYSTONE_CONF=$KEYSTONE_DIR/etc/keystone.conf
-    cp $DEVSTACK/files/keystone.conf $KEYSTONE_CONF
+    cp $FILES/keystone.conf $KEYSTONE_CONF
     sudo sed -e "s,%SQL_CONN%,$BASE_SQL_CONN/keystone,g" -i $KEYSTONE_CONF
 
     # initialize keystone with default users/endpoints
-    BIN_DIR=$KEYSTONE_DIR/bin bash $DEVSTACK/files/keystone_data.sh
+    BIN_DIR=$KEYSTONE_DIR/bin bash $FILES/keystone_data.sh
 fi