diff --git a/planetstack/core/dashboard/views/view_common.py b/planetstack/core/dashboard/views/view_common.py
index deb8210..7d59278 100644
--- a/planetstack/core/dashboard/views/view_common.py
+++ b/planetstack/core/dashboard/views/view_common.py
@@ -18,7 +18,7 @@
 from operator import itemgetter, attrgetter
 import traceback
 import math
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 
 def getDashboardContext(user, context={}, tableFormat = False):
         context = {}
diff --git a/planetstack/core/middleware.py b/planetstack/core/middleware.py
index 54267e3..4cfd991 100644
--- a/planetstack/core/middleware.py
+++ b/planetstack/core/middleware.py
@@ -4,7 +4,7 @@
 
 def get_request():
     if not hasattr(_active, "request"):
-        raise Exception("Please add 'core.middleware.GlobalRequestMiddleware' to <XOS_DIR>/planetstack/settings.py:MIDDLEWARE_CLASSES")
+        raise Exception("Please add 'core.middleware.GlobalRequestMiddleware' to <XOS_DIR>/xos.settings.py:MIDDLEWARE_CLASSES")
     return _active.request
 
 class GlobalRequestMiddleware(object):
diff --git a/planetstack/core/models/site.py b/planetstack/core/models/site.py
index 2a41352..d1f04dd 100644
--- a/planetstack/core/models/site.py
+++ b/planetstack/core/models/site.py
@@ -6,7 +6,7 @@
 from django.contrib.contenttypes import generic
 from geoposition.fields import GeopositionField
 from core.acl import AccessControlList
-from planetstack.config import Config
+from xos.config import Config
 
 config = Config()
 
diff --git a/planetstack/core/models/sliver.py b/planetstack/core/models/sliver.py
index 62e487b..0173887 100644
--- a/planetstack/core/models/sliver.py
+++ b/planetstack/core/models/sliver.py
@@ -13,7 +13,7 @@
 from core.models import Tag
 from core.models import Flavor
 from django.contrib.contenttypes import generic
-from planetstack.config import Config
+from xos.config import Config
 from monitor import driver as monitor
 
 config = Config()
diff --git a/planetstack/core/views/legacyapi.py b/planetstack/core/views/legacyapi.py
index 978fd21..520f137 100644
--- a/planetstack/core/views/legacyapi.py
+++ b/planetstack/core/views/legacyapi.py
@@ -298,6 +298,6 @@
         configs={}
         configs[slicename] = GetConfiguration({"name": "princeton_vcoblitz"})
 
-        file("planetstack_config","w").write(json.dumps(configs))
+        file("xos.config","w").write(json.dumps(configs))
         file("planetstack_slices","w").write(json.dumps(slices))
         file("planetstack_nodes","w").write(json.dumps(nodes))
diff --git a/planetstack/core/xoslib/tools/make_defaults.py b/planetstack/core/xoslib/tools/make_defaults.py
index 04fccc0..e008845 100644
--- a/planetstack/core/xoslib/tools/make_defaults.py
+++ b/planetstack/core/xoslib/tools/make_defaults.py
@@ -3,7 +3,7 @@
 XOS_DIR="/opt/xos"
 os.chdir(XOS_DIR)
 sys.path.append(XOS_DIR)
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import django
 import core.models
 from django.db import models
diff --git a/planetstack/core/xoslib/tools/make_validators.py b/planetstack/core/xoslib/tools/make_validators.py
index f627457..44ef43a 100644
--- a/planetstack/core/xoslib/tools/make_validators.py
+++ b/planetstack/core/xoslib/tools/make_validators.py
@@ -3,7 +3,7 @@
 XOS_DIR="/opt/xos"
 os.chdir(XOS_DIR)
 sys.path.append(XOS_DIR)
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import django
 import core.models
 from django.db import models
diff --git a/planetstack/dependency_walker.py b/planetstack/dependency_walker.py
index 46fe655..0b23136 100644
--- a/planetstack/dependency_walker.py
+++ b/planetstack/dependency_walker.py
@@ -2,7 +2,7 @@
 
 import os
 import imp
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 import inspect
 import time
 import traceback
diff --git a/planetstack/ec2_observer/__init__.py b/planetstack/ec2_observer/__init__.py
index d9a63be..f4c7743 100644
--- a/planetstack/ec2_observer/__init__.py
+++ b/planetstack/ec2_observer/__init__.py
@@ -1,4 +1,4 @@
-from planetstack.config import Config
+from xos.config import Config
 
 try:
     observer_disabled = Config().observer_disabled
diff --git a/planetstack/ec2_observer/deleter.py b/planetstack/ec2_observer/deleter.py
index e088558..f7d459d 100644
--- a/planetstack/ec2_observer/deleter.py
+++ b/planetstack/ec2_observer/deleter.py
@@ -1,6 +1,6 @@
 import os
 import base64
-from planetstack.config import Config
+from xos.config import Config
 
 class Deleter:
 	model=None # Must be overridden
diff --git a/planetstack/ec2_observer/error_mapper.py b/planetstack/ec2_observer/error_mapper.py
index a7daa59..3039a56 100644
--- a/planetstack/ec2_observer/error_mapper.py
+++ b/planetstack/ec2_observer/error_mapper.py
@@ -1,4 +1,4 @@
-from planetstack.config import Config
+from xos.config import Config
 from util.logger import Logger, logging, logger
 
 class ErrorMapper:
diff --git a/planetstack/ec2_observer/event_loop.py b/planetstack/ec2_observer/event_loop.py
index fb5f973..fea2e3e 100644
--- a/planetstack/ec2_observer/event_loop.py
+++ b/planetstack/ec2_observer/event_loop.py
@@ -16,7 +16,7 @@
 from openstack.driver import OpenStackDriver
 from util.logger import Logger, logging, logger
 #from timeout import timeout
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 from observer.steps import *
 from syncstep import SyncStep
 from toposort import toposort
diff --git a/planetstack/ec2_observer/event_manager.py b/planetstack/ec2_observer/event_manager.py
index 190d4eb..fc07f64 100644
--- a/planetstack/ec2_observer/event_manager.py
+++ b/planetstack/ec2_observer/event_manager.py
@@ -1,7 +1,7 @@
 import threading
 import requests, json
 
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 
 import uuid
 import os
diff --git a/planetstack/ec2_observer/steps/sync_deployments.py b/planetstack/ec2_observer/steps/sync_deployments.py
index 76eeb1f..097a6e9 100644
--- a/planetstack/ec2_observer/steps/sync_deployments.py
+++ b/planetstack/ec2_observer/steps/sync_deployments.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from ec2_observer.syncstep import SyncStep
 from core.models.site import *
 
diff --git a/planetstack/ec2_observer/steps/sync_images.py b/planetstack/ec2_observer/steps/sync_images.py
index b494c06..c3dc5a1 100644
--- a/planetstack/ec2_observer/steps/sync_images.py
+++ b/planetstack/ec2_observer/steps/sync_images.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 from ec2_observer.syncstep import SyncStep
 from core.models.image import Image
 from ec2_observer.awslib import *
diff --git a/planetstack/ec2_observer/steps/sync_site_deployments.py b/planetstack/ec2_observer/steps/sync_site_deployments.py
index 5adccb7..ef66783 100644
--- a/planetstack/ec2_observer/steps/sync_site_deployments.py
+++ b/planetstack/ec2_observer/steps/sync_site_deployments.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from ec2_observer.syncstep import SyncStep
 from core.models.site import *
 from ec2_observer.awslib import *
diff --git a/planetstack/ec2_observer/steps/sync_sites.py b/planetstack/ec2_observer/steps/sync_sites.py
index 0959c71..d139cc5 100644
--- a/planetstack/ec2_observer/steps/sync_sites.py
+++ b/planetstack/ec2_observer/steps/sync_sites.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from ec2_observer.syncstep import SyncStep
 from core.models.site import *
 from ec2_observer.awslib import *
diff --git a/planetstack/ec2_observer/steps/sync_slivers.py b/planetstack/ec2_observer/steps/sync_slivers.py
index 15cd5eb..a86b4c4 100644
--- a/planetstack/ec2_observer/steps/sync_slivers.py
+++ b/planetstack/ec2_observer/steps/sync_slivers.py
@@ -2,7 +2,7 @@
 import json
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from ec2_observer.syncstep import SyncStep
 from core.models.sliver import Sliver
 from core.models.slice import SlicePrivilege, SliceDeployments
diff --git a/planetstack/ec2_observer/steps/sync_users.py b/planetstack/ec2_observer/steps/sync_users.py
index 10ebd60..5fe70c7 100644
--- a/planetstack/ec2_observer/steps/sync_users.py
+++ b/planetstack/ec2_observer/steps/sync_users.py
@@ -4,7 +4,7 @@
 import time
 from datetime import datetime 
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from ec2_observer.syncstep import SyncStep
 from core.models.user import User
 from core.models.site import *
diff --git a/planetstack/ec2_observer/syncstep.py b/planetstack/ec2_observer/syncstep.py
index 31fec04..c6ed066 100644
--- a/planetstack/ec2_observer/syncstep.py
+++ b/planetstack/ec2_observer/syncstep.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from datetime import datetime
-from planetstack.config import Config
+from xos.config import Config
 from util.logger import Logger, logging
 from observer.steps import *
 
diff --git a/planetstack/hpc_observer/fsck.py b/planetstack/hpc_observer/fsck.py
index 817d616..2fbb002 100644
--- a/planetstack/hpc_observer/fsck.py
+++ b/planetstack/hpc_observer/fsck.py
@@ -4,9 +4,9 @@
 import inspect
 import os
 import sys
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 sys.path.append("/opt/xos")
-from planetstack.config import Config, DEFAULT_CONFIG_FN, XOS_DIR
+from xos.config import Config, DEFAULT_CONFIG_FN, XOS_DIR
 from util.logger import Logger, logging
 from observer.syncstep import SyncStep
 
diff --git a/planetstack/hpc_observer/hpclib.py b/planetstack/hpc_observer/hpclib.py
index 7986540..5ec08a4 100644
--- a/planetstack/hpc_observer/hpclib.py
+++ b/planetstack/hpc_observer/hpclib.py
@@ -6,9 +6,9 @@
 
 if __name__ == '__main__':
     sys.path.append("/opt/xos")
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
-from planetstack.config import Config
+from xos.config import Config
 from core.models import Service
 from hpc.models import HpcService
 from requestrouter.models import RequestRouterService
diff --git a/planetstack/hpc_observer/steps/garbage_collector.py b/planetstack/hpc_observer/steps/garbage_collector.py
index bf99da7..3ccffee 100644
--- a/planetstack/hpc_observer/steps/garbage_collector.py
+++ b/planetstack/hpc_observer/steps/garbage_collector.py
@@ -4,7 +4,7 @@
 import traceback
 from collections import defaultdict
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from util.logger import Logger, logging
 from observer.syncstep import SyncStep
 from hpc.models import ServiceProvider, ContentProvider, CDNPrefix, OriginServer
diff --git a/planetstack/hpc_observer/steps/sync_cdnprefix.py b/planetstack/hpc_observer/steps/sync_cdnprefix.py
index dfa6ef8..8333448 100644
--- a/planetstack/hpc_observer/steps/sync_cdnprefix.py
+++ b/planetstack/hpc_observer/steps/sync_cdnprefix.py
@@ -2,7 +2,7 @@
 import sys
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from hpc.models import ServiceProvider, ContentProvider, CDNPrefix
diff --git a/planetstack/hpc_observer/steps/sync_contentprovider.py b/planetstack/hpc_observer/steps/sync_contentprovider.py
index b3c2f66..39c15de 100644
--- a/planetstack/hpc_observer/steps/sync_contentprovider.py
+++ b/planetstack/hpc_observer/steps/sync_contentprovider.py
@@ -2,7 +2,7 @@
 import sys
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from hpc.models import ServiceProvider, ContentProvider
diff --git a/planetstack/hpc_observer/steps/sync_hpcservices.py b/planetstack/hpc_observer/steps/sync_hpcservices.py
index d8d7ba5..c5e2679 100644
--- a/planetstack/hpc_observer/steps/sync_hpcservices.py
+++ b/planetstack/hpc_observer/steps/sync_hpcservices.py
@@ -2,7 +2,7 @@
 import sys
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from hpc.models import HpcService
diff --git a/planetstack/hpc_observer/steps/sync_originserver.py b/planetstack/hpc_observer/steps/sync_originserver.py
index d18c672..405a8a5 100644
--- a/planetstack/hpc_observer/steps/sync_originserver.py
+++ b/planetstack/hpc_observer/steps/sync_originserver.py
@@ -3,7 +3,7 @@
 import base64
 
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from hpc.models import ServiceProvider, ContentProvider, CDNPrefix, OriginServer
diff --git a/planetstack/hpc_observer/steps/sync_serviceprovider.py b/planetstack/hpc_observer/steps/sync_serviceprovider.py
index ca0ba6a..ac1fc69 100644
--- a/planetstack/hpc_observer/steps/sync_serviceprovider.py
+++ b/planetstack/hpc_observer/steps/sync_serviceprovider.py
@@ -2,7 +2,7 @@
 import sys
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from hpc.models import ServiceProvider
diff --git a/planetstack/hpc_wizard/planetstack_analytics.py b/planetstack/hpc_wizard/planetstack_analytics.py
index 06a083b..2728f27 100644
--- a/planetstack/hpc_wizard/planetstack_analytics.py
+++ b/planetstack/hpc_wizard/planetstack_analytics.py
@@ -11,7 +11,7 @@
 # XXX hardcoded path
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from django.conf import settings
 from django import db
 from django.db import connection
diff --git a/planetstack/importer/plclassic/importer.py b/planetstack/importer/plclassic/importer.py
index 3a65dc3..864f4b9 100644
--- a/planetstack/importer/plclassic/importer.py
+++ b/planetstack/importer/plclassic/importer.py
@@ -1,5 +1,5 @@
 import os
-#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import sys
 from optparse import OptionParser
 from getpass import getpass
diff --git a/planetstack/manage.py b/planetstack/manage.py
index 4a7e2df..0ddd014 100644
--- a/planetstack/manage.py
+++ b/planetstack/manage.py
@@ -3,7 +3,7 @@
 import sys
 
 if __name__ == "__main__":
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
     from django.core.management import execute_from_command_line
 
diff --git a/planetstack/monitor/__init__.py b/planetstack/monitor/__init__.py
index d29d017..6debf82 100644
--- a/planetstack/monitor/__init__.py
+++ b/planetstack/monitor/__init__.py
@@ -1,4 +1,4 @@
-from planetstack.settings import STATISTICS_DRIVER
+from xos.settings import STATISTICS_DRIVER
 
 if (STATISTICS_DRIVER=="ceilometer"):
     from observer import ceilometer
diff --git a/planetstack/openstack/client.py b/planetstack/openstack/client.py
index 0aa6c7d..4962e06 100644
--- a/planetstack/openstack/client.py
+++ b/planetstack/openstack/client.py
@@ -9,7 +9,7 @@
 except:
     has_openstack = False
 
-from planetstack.config import Config
+from xos.config import Config
 
 def require_enabled(callable):
     def wrapper(*args, **kwds):
diff --git a/planetstack/openstack/driver.py b/planetstack/openstack/driver.py
index 2edf10e..02d49f9 100644
--- a/planetstack/openstack/driver.py
+++ b/planetstack/openstack/driver.py
@@ -1,6 +1,6 @@
 import commands
 import hashlib
-from planetstack.config import Config
+from xos.config import Config
 from core.models import Controller
 
 try:
diff --git a/planetstack/openstack/manager.py b/planetstack/openstack/manager.py
index c1647e8..441a18e 100644
--- a/planetstack/openstack/manager.py
+++ b/planetstack/openstack/manager.py
@@ -1,15 +1,15 @@
 import os
-#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import string
 import random
 import hashlib
 from datetime import datetime
 
 from netaddr import IPAddress, IPNetwork
-from planetstack import settings
+from xos import settings
 from django.core import management
 from core.models import * 
-from planetstack.config import Config
+from xos.config import Config
 try:
     from openstack.client import OpenStackClient
     from openstack.driver import OpenStackDriver
diff --git a/planetstack/openstack/reservationagent.py b/planetstack/openstack/reservationagent.py
index 0fe406b..cee5269 100644
--- a/planetstack/openstack/reservationagent.py
+++ b/planetstack/openstack/reservationagent.py
@@ -1,7 +1,7 @@
 import datetime
 import os
 import sys
-#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import time
 import django.utils
 from core.models.sliver import Sliver
diff --git a/planetstack/openstack/sliveragent.py b/planetstack/openstack/sliveragent.py
index b2f29cf..4aea44d 100644
--- a/planetstack/openstack/sliveragent.py
+++ b/planetstack/openstack/sliveragent.py
@@ -1,6 +1,6 @@
 import os
 import sys
-#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+#os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import time
 from core.models.sliver import Sliver
 from openstack.manager import OpenStackManager
diff --git a/planetstack/openstack_observer/__init__.py b/planetstack/openstack_observer/__init__.py
index 5d6ea79..e56cd39 100644
--- a/planetstack/openstack_observer/__init__.py
+++ b/planetstack/openstack_observer/__init__.py
@@ -1,4 +1,4 @@
-from planetstack.config import Config
+from xos.config import Config
 
 try:
     observer_disabled = Config().observer_disabled
diff --git a/planetstack/openstack_observer/ansible.py b/planetstack/openstack_observer/ansible.py
index 0459cb9..f8ed547 100644
--- a/planetstack/openstack_observer/ansible.py
+++ b/planetstack/openstack_observer/ansible.py
@@ -9,7 +9,7 @@
 import re
 
 # XXX hardcoded path
-#    is there any reason why we aren't importing planetstack.config ?
+#    is there any reason why we aren't importing xos.config ?
 XOS_DIR="/opt/xos"
 
 try:
diff --git a/planetstack/openstack_observer/deleter.py b/planetstack/openstack_observer/deleter.py
index e088558..f7d459d 100644
--- a/planetstack/openstack_observer/deleter.py
+++ b/planetstack/openstack_observer/deleter.py
@@ -1,6 +1,6 @@
 import os
 import base64
-from planetstack.config import Config
+from xos.config import Config
 
 class Deleter:
 	model=None # Must be overridden
diff --git a/planetstack/openstack_observer/error_mapper.py b/planetstack/openstack_observer/error_mapper.py
index a7daa59..3039a56 100644
--- a/planetstack/openstack_observer/error_mapper.py
+++ b/planetstack/openstack_observer/error_mapper.py
@@ -1,4 +1,4 @@
-from planetstack.config import Config
+from xos.config import Config
 from util.logger import Logger, logging, logger
 
 class ErrorMapper:
diff --git a/planetstack/openstack_observer/event_loop.py b/planetstack/openstack_observer/event_loop.py
index 0d1486d..752cb86 100644
--- a/planetstack/openstack_observer/event_loop.py
+++ b/planetstack/openstack_observer/event_loop.py
@@ -20,7 +20,7 @@
 from openstack.driver import OpenStackDriver
 from util.logger import Logger, logging, logger
 #from timeout import timeout
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 from observer.steps import *
 from syncstep import SyncStep
 from toposort import toposort
diff --git a/planetstack/openstack_observer/event_manager.py b/planetstack/openstack_observer/event_manager.py
index 190d4eb..fc07f64 100644
--- a/planetstack/openstack_observer/event_manager.py
+++ b/planetstack/openstack_observer/event_manager.py
@@ -1,7 +1,7 @@
 import threading
 import requests, json
 
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 
 import uuid
 import os
diff --git a/planetstack/openstack_observer/steps/sync_controller_images.py b/planetstack/openstack_observer/steps/sync_controller_images.py
index e076d81..fa4bd35 100644
--- a/planetstack/openstack_observer/steps/sync_controller_images.py
+++ b/planetstack/openstack_observer/steps/sync_controller_images.py
@@ -2,7 +2,7 @@
 import base64
 from collections import defaultdict
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models import Controller
 from core.models import Image, ControllerImages
diff --git a/planetstack/openstack_observer/steps/sync_controller_networks.py b/planetstack/openstack_observer/steps/sync_controller_networks.py
index 83cf8ea..242073d 100644
--- a/planetstack/openstack_observer/steps/sync_controller_networks.py
+++ b/planetstack/openstack_observer/steps/sync_controller_networks.py
@@ -3,7 +3,7 @@
 from collections import defaultdict
 from netaddr import IPAddress, IPNetwork
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.network import *
 from core.models.slice import *
diff --git a/planetstack/openstack_observer/steps/sync_controller_site_privileges.py b/planetstack/openstack_observer/steps/sync_controller_site_privileges.py
index 0ea86e1..e58f9a1 100644
--- a/planetstack/openstack_observer/steps/sync_controller_site_privileges.py
+++ b/planetstack/openstack_observer/steps/sync_controller_site_privileges.py
@@ -2,7 +2,7 @@
 import base64
 from collections import defaultdict
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.site import Controller, SitePrivilege 
 from core.models.user import User
diff --git a/planetstack/openstack_observer/steps/sync_controller_sites.py b/planetstack/openstack_observer/steps/sync_controller_sites.py
index f7905c9..9aa6c5b 100644
--- a/planetstack/openstack_observer/steps/sync_controller_sites.py
+++ b/planetstack/openstack_observer/steps/sync_controller_sites.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from openstack_observer.openstacksyncstep import OpenStackSyncStep
 from core.models.site import *
 from observer.ansible import *
diff --git a/planetstack/openstack_observer/steps/sync_controller_slice_privileges.py b/planetstack/openstack_observer/steps/sync_controller_slice_privileges.py
index 99000ea..96156f7 100644
--- a/planetstack/openstack_observer/steps/sync_controller_slice_privileges.py
+++ b/planetstack/openstack_observer/steps/sync_controller_slice_privileges.py
@@ -2,7 +2,7 @@
 import base64
 from collections import defaultdict
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.slice import Controller, SlicePrivilege 
 from core.models.user import User
diff --git a/planetstack/openstack_observer/steps/sync_controller_slices.py b/planetstack/openstack_observer/steps/sync_controller_slices.py
index 0c24ae1..df44fa5 100644
--- a/planetstack/openstack_observer/steps/sync_controller_slices.py
+++ b/planetstack/openstack_observer/steps/sync_controller_slices.py
@@ -3,7 +3,7 @@
 from collections import defaultdict
 from netaddr import IPAddress, IPNetwork
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.slice import Slice, ControllerSlice
 from core.models.controlleruser import ControllerUser
diff --git a/planetstack/openstack_observer/steps/sync_controller_users.py b/planetstack/openstack_observer/steps/sync_controller_users.py
index 08123fe..43053b7 100644
--- a/planetstack/openstack_observer/steps/sync_controller_users.py
+++ b/planetstack/openstack_observer/steps/sync_controller_users.py
@@ -2,7 +2,7 @@
 import base64
 from collections import defaultdict
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.site import Controller, SiteDeployment, SiteDeployment
 from core.models.user import User
diff --git a/planetstack/openstack_observer/steps/sync_images.py b/planetstack/openstack_observer/steps/sync_images.py
new file mode 100644
index 0000000..f5764a1
--- /dev/null
+++ b/planetstack/openstack_observer/steps/sync_images.py
@@ -0,0 +1,43 @@
+import os
+import base64
+from django.db.models import F, Q
+from xos.config import Config
+from observer.openstacksyncstep import OpenStackSyncStep
+from core.models.image import Image
+
+class SyncImages(OpenStackSyncStep):
+    provides=[Image]
+    requested_interval=0
+    observes=Image
+
+    def fetch_pending(self, deleted):
+        # Images come from the back end
+        # You can't delete them
+        if (deleted):
+            return []
+
+        # get list of images on disk
+        images_path = Config().observer_images_directory 
+        available_images = {}
+        for f in os.listdir(images_path):
+            if os.path.isfile(os.path.join(images_path ,f)):
+                available_images[f] = os.path.join(images_path ,f)
+
+        images = Image.objects.all()
+        image_names = [image.name for image in images]
+
+        for image_name in available_images:
+            #remove file extension
+            clean_name = ".".join(image_name.split('.')[:-1])
+            if clean_name not in image_names:
+                image = Image(name=clean_name,
+                              disk_format='raw',
+                              container_format='bare', 
+                              path = available_images[image_name])
+                image.save()
+       
+        
+        return Image.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None)) 
+
+    def sync_record(self, image):
+        image.save()
diff --git a/planetstack/openstack_observer/steps/sync_network_slivers.py b/planetstack/openstack_observer/steps/sync_network_slivers.py
index 7406fb2..535e7a4 100644
--- a/planetstack/openstack_observer/steps/sync_network_slivers.py
+++ b/planetstack/openstack_observer/steps/sync_network_slivers.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models import Controller
 from core.models.network import *
diff --git a/planetstack/openstack_observer/steps/sync_roles.py b/planetstack/openstack_observer/steps/sync_roles.py
new file mode 100644
index 0000000..0bd26c6
--- /dev/null
+++ b/planetstack/openstack_observer/steps/sync_roles.py
@@ -0,0 +1,42 @@
+import os
+import base64
+from django.db.models import F, Q
+from xos.config import Config
+from observer.openstacksyncstep import OpenStackSyncStep
+from core.models.role import Role
+from core.models.site import SiteRole, Controller, ControllerRole
+from core.models.slice import SliceRole
+
+class SyncRoles(OpenStackSyncStep):
+    provides=[Role]
+    requested_interval=0
+    observes=Role
+
+    def fetch_pending(self, deleted):
+        # Deleting roles is not supported yet
+        if (deleted):
+            return []
+
+        site_roles = SiteRole.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None))
+        slice_roles = SliceRole.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None))
+        controller_roles = ControllerRole.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None))
+
+        roles = []
+        for site_role in site_roles:
+            roles.append(site_role)
+        for slice_role in slice_roles:
+            roles.append(slice_role)
+        for controller_role in controller_roles:
+            roles.append(controller_role)
+
+        return roles
+
+
+    def sync_record(self, role):
+        if not role.enacted:
+            controllers = Controller.objects.all()
+       	    for controller in controllers:
+                driver = self.driver.admin_driver(controller=controller)
+                driver.create_role(role.role)
+            role.save()
+    
diff --git a/planetstack/openstack_observer/steps/sync_slivers.py b/planetstack/openstack_observer/steps/sync_slivers.py
index 9a25c19..00e1691 100644
--- a/planetstack/openstack_observer/steps/sync_slivers.py
+++ b/planetstack/openstack_observer/steps/sync_slivers.py
@@ -2,7 +2,7 @@
 import base64
 import socket
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.openstacksyncstep import OpenStackSyncStep
 from core.models.sliver import Sliver
 from core.models.slice import Slice, SlicePrivilege, ControllerSlice
diff --git a/planetstack/openstack_observer/syncstep.py b/planetstack/openstack_observer/syncstep.py
index 2f75a32..0541c67 100644
--- a/planetstack/openstack_observer/syncstep.py
+++ b/planetstack/openstack_observer/syncstep.py
@@ -1,7 +1,7 @@
 import os
 import base64
 from datetime import datetime
-from planetstack.config import Config
+from xos.config import Config
 from util.logger import Logger, logging
 from observer.steps import *
 from django.db.models import F, Q
diff --git a/planetstack/rr_observer/deleters/servicemap_deleter.py b/planetstack/rr_observer/deleters/servicemap_deleter.py
index 60fe337..d0a707f 100644
--- a/planetstack/rr_observer/deleters/servicemap_deleter.py
+++ b/planetstack/rr_observer/deleters/servicemap_deleter.py
@@ -4,7 +4,7 @@
 from requestrouter.models import ServiceMap
 from observer.deleter import Deleter
 from util.logger import Logger, logging
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 
 parentdir = os.path.join(os.path.dirname(__file__),"..")
 sys.path.insert(0,parentdir)
diff --git a/planetstack/rr_observer/rrlib.py b/planetstack/rr_observer/rrlib.py
index ed5a836..20c2341 100644
--- a/planetstack/rr_observer/rrlib.py
+++ b/planetstack/rr_observer/rrlib.py
@@ -6,9 +6,9 @@
 from sets import Set
 if __name__ == '__main__':
     sys.path.append("/opt/xos")
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
-from planetstack.config import Config
+from xos.config import Config
 from core.models import Service
 from requestrouter.models import RequestRouterService, ServiceMap
 from util.logger import Logger, logging
diff --git a/planetstack/rr_observer/steps/sync_requestrouterservices.py b/planetstack/rr_observer/steps/sync_requestrouterservices.py
index 546b45d..db63c5b 100644
--- a/planetstack/rr_observer/steps/sync_requestrouterservices.py
+++ b/planetstack/rr_observer/steps/sync_requestrouterservices.py
@@ -3,7 +3,7 @@
 import base64
 import traceback
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from requestrouter.models import RequestRouterService
diff --git a/planetstack/rr_observer/steps/sync_servicemap.py b/planetstack/rr_observer/steps/sync_servicemap.py
index f276bc4..1ec54aa 100644
--- a/planetstack/rr_observer/steps/sync_servicemap.py
+++ b/planetstack/rr_observer/steps/sync_servicemap.py
@@ -5,7 +5,7 @@
 import base64
 import traceback
 from django.db.models import F, Q
-from planetstack.config import Config, XOS_DIR
+from xos.config import Config, XOS_DIR
 from observer.syncstep import SyncStep
 from core.models import Service
 from requestrouter.models import ServiceMap
diff --git a/planetstack/syndicate_observer/steps/sync_volume.py b/planetstack/syndicate_observer/steps/sync_volume.py
index 20060ca..726908c 100644
--- a/planetstack/syndicate_observer/steps/sync_volume.py
+++ b/planetstack/syndicate_observer/steps/sync_volume.py
@@ -12,11 +12,11 @@
     else:
         print >> sys.stderr, "No OPENCLOUD_PYTHONPATH variable set.  Assuming that OpenCloud is in PYTHONPATH"
  
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
 
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 from syndicate_storage.models import Volume
diff --git a/planetstack/syndicate_observer/steps/sync_volumeaccessright.py b/planetstack/syndicate_observer/steps/sync_volumeaccessright.py
index c1fef1c..e68b6af 100644
--- a/planetstack/syndicate_observer/steps/sync_volumeaccessright.py
+++ b/planetstack/syndicate_observer/steps/sync_volumeaccessright.py
@@ -12,10 +12,10 @@
     else:
         print >> sys.stderr, "No OPENCLOUD_PYTHONPATH variable set.  Assuming that OpenCloud is in PYTHONPATH"
  
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service
 
diff --git a/planetstack/syndicate_observer/steps/sync_volumeslice.py b/planetstack/syndicate_observer/steps/sync_volumeslice.py
index 63b5e53..3217d7a 100644
--- a/planetstack/syndicate_observer/steps/sync_volumeslice.py
+++ b/planetstack/syndicate_observer/steps/sync_volumeslice.py
@@ -12,10 +12,10 @@
     else:
         print >> sys.stderr, "No OPENCLOUD_PYTHONPATH variable set.  Assuming that OpenCloud is in PYTHONPATH"
  
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
 from django.db.models import F, Q
-from planetstack.config import Config
+from xos.config import Config
 from observer.syncstep import SyncStep
 from core.models import Service, Slice
 
diff --git a/planetstack/syndicate_observer/syndicate-backend.py b/planetstack/syndicate_observer/syndicate-backend.py
index 7d94b67..32670d9 100644
--- a/planetstack/syndicate_observer/syndicate-backend.py
+++ b/planetstack/syndicate_observer/syndicate-backend.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 import os
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from observer.backend import Backend 
 
 if __name__ == '__main__':
diff --git a/planetstack/syndicate_observer/syndicatelib.py b/planetstack/syndicate_observer/syndicatelib.py
index 09953cb..331e925 100644
--- a/planetstack/syndicate_observer/syndicatelib.py
+++ b/planetstack/syndicate_observer/syndicatelib.py
@@ -55,7 +55,7 @@
    logger.warning("No OPENCLOUD_PYTHONPATH set.  Assuming Syndicate models are in your PYTHONPATH")
 
 try:
-   os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+   os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
    # get our models
    import syndicate_storage.models as models
@@ -1333,7 +1333,7 @@
 # run functional tests
 if __name__ == "__main__":
     sys.path.append("/opt/xos")
-    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
     if len(sys.argv) < 2:
       print "Usage: %s testname [args]" % sys.argv[0]
diff --git a/planetstack/tests/GetConfiguration.py b/planetstack/tests/GetConfiguration.py
index d0d36d2..74d9844 100644
--- a/planetstack/tests/GetConfiguration.py
+++ b/planetstack/tests/GetConfiguration.py
@@ -6,7 +6,7 @@
 
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from openstack.manager import OpenStackManager
 from core.models import Slice, Sliver, ServiceClass, Reservation, Tag, Network, User, Node, Image, Deployment, Site, NetworkTemplate, NetworkSlice
 
@@ -253,6 +253,6 @@
         for slicename in ["princeton_vcoblitz"]:
             configs[slicename] = GetConfiguration({"name": slicename})
 
-        file("planetstack_config","w").write(json.dumps(configs))
+        file("xos.config","w").write(json.dumps(configs))
         file("planetstack_slices","w").write(json.dumps(slices))
         file("planetstack_nodes","w").write(json.dumps(nodes))
diff --git a/planetstack/tests/generate_billing_sample.py b/planetstack/tests/generate_billing_sample.py
index 01b8919..a8d3aae 100644
--- a/planetstack/tests/generate_billing_sample.py
+++ b/planetstack/tests/generate_billing_sample.py
@@ -23,7 +23,7 @@
 # XXX hardcoded path
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 #from openstack.manager import OpenStackManager
 from core.models import Slice, Sliver, ServiceClass, Reservation, Tag, Network, User, Node, Image, Deployment, Site, NetworkTemplate, NetworkSlice
 from core.models import Invoice, Charge, Account, UsableObject, Payment
diff --git a/planetstack/tests/networktest.py b/planetstack/tests/networktest.py
index 131db5a..5390f0f 100644
--- a/planetstack/tests/networktest.py
+++ b/planetstack/tests/networktest.py
@@ -17,7 +17,7 @@
 
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from openstack.manager import OpenStackManager
 from core.models import Slice, Sliver, ServiceClass, Reservation, Tag, Network, User, Node, Image, Deployment, Site, NetworkTemplate, NetworkSlice
 
diff --git a/planetstack/tests/planetstacktest.py b/planetstack/tests/planetstacktest.py
index 7174331..99bd730 100644
--- a/planetstack/tests/planetstacktest.py
+++ b/planetstack/tests/planetstacktest.py
@@ -5,7 +5,7 @@
 
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from openstack.manager import OpenStackManager
 from core.models import Slice, Sliver, ServiceClass, Reservation, Tag, Network, User, Node, Image, Deployment, Site, NetworkTemplate, NetworkSlice
 
diff --git a/planetstack/tests/slivertest.py b/planetstack/tests/slivertest.py
index c0fea7e..60124fd 100644
--- a/planetstack/tests/slivertest.py
+++ b/planetstack/tests/slivertest.py
@@ -12,7 +12,7 @@
 
 sys.path.append("/opt/xos")
 
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from openstack.manager import OpenStackManager
 from core.models import Slice, Sliver, ServiceClass, Reservation, Tag, Network, User, Node, Image, Deployment, Site, NetworkTemplate, NetworkSlice
 
diff --git a/planetstack/tools/init-xos.py b/planetstack/tools/init-xos.py
index de7d183..6860a62 100644
--- a/planetstack/tools/init-xos.py
+++ b/planetstack/tools/init-xos.py
@@ -1,7 +1,7 @@
 import os
 import sys
 sys.path.append("/opt/xos")
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 import django
 from core.models import *
 django.setup()
diff --git a/planetstack/util/logger.py b/planetstack/util/logger.py
index e4137e7..b88d233 100644
--- a/planetstack/util/logger.py
+++ b/planetstack/util/logger.py
@@ -39,7 +39,7 @@
         # default is to locate loggername from the logfile if avail.
         if not logfile:
             try:
-                from planetstack.config import Config
+                from xos.config import Config
                 logfile = Config().observer_log_file
             except:
                 logfile = "/var/log/planetstack.log"
diff --git a/planetstack/xos-config.py b/planetstack/xos-config.py
index e6f3d60..66f48f8 100755
--- a/planetstack/xos-config.py
+++ b/planetstack/xos-config.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 import sys
-from planetstack.config import Config
+from xos.config import Config
 
 def help():
     print "syntax: %s get name [default]" % sys.argv[0]
diff --git a/planetstack/xos-observer.py b/planetstack/xos-observer.py
index 1347e44..83a392a 100644
--- a/planetstack/xos-observer.py
+++ b/planetstack/xos-observer.py
@@ -1,9 +1,9 @@
 #!/usr/bin/env python
 import os
 import argparse
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 from observer.backend import Backend
-from planetstack.config import Config, DEFAULT_CONFIG_FN
+from xos.config import Config, DEFAULT_CONFIG_FN
 
 try:
     from django import setup as django_setup # django 1.7
diff --git a/planetstack/planetstack/__init__.py b/planetstack/xos/__init__.py
similarity index 100%
rename from planetstack/planetstack/__init__.py
rename to planetstack/xos/__init__.py
diff --git a/planetstack/planetstack/config.py b/planetstack/xos/config.py
similarity index 100%
rename from planetstack/planetstack/config.py
rename to planetstack/xos/config.py
diff --git a/planetstack/planetstack/settings.py b/planetstack/xos/settings.py
similarity index 98%
rename from planetstack/planetstack/settings.py
rename to planetstack/xos/settings.py
index cae61aa..07fd850 100644
--- a/planetstack/planetstack/settings.py
+++ b/planetstack/xos/settings.py
@@ -114,10 +114,10 @@
     # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 )
 
-ROOT_URLCONF = 'planetstack.urls'
+ROOT_URLCONF = 'xos.urls'
 
 # Python dotted path to the WSGI application used by Django's runserver.
-WSGI_APPLICATION = 'planetstack.wsgi.application'
+WSGI_APPLICATION = 'xos.wsgi.application'
 
 TEMPLATE_DIRS = (
     # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
diff --git a/planetstack/planetstack/tests.py b/planetstack/xos/tests.py
similarity index 100%
rename from planetstack/planetstack/tests.py
rename to planetstack/xos/tests.py
diff --git a/planetstack/planetstack/urls.py b/planetstack/xos/urls.py
similarity index 100%
rename from planetstack/planetstack/urls.py
rename to planetstack/xos/urls.py
diff --git a/planetstack/planetstack/wsgi.py b/planetstack/xos/wsgi.py
similarity index 90%
rename from planetstack/planetstack/wsgi.py
rename to planetstack/xos/wsgi.py
index 6e03e11..1e27e10 100644
--- a/planetstack/planetstack/wsgi.py
+++ b/planetstack/xos/wsgi.py
@@ -18,8 +18,8 @@
 # We defer to a DJANGO_SETTINGS_MODULE already in the environment. This breaks
 # if running multiple sites in the same mod_wsgi process. To fix this, use
 # mod_wsgi daemon mode with each site in its own daemon process, or use
-# os.environ["DJANGO_SETTINGS_MODULE"] = "planetstack.settings"
-os.environ.setdefault("DJANGO_SETTINGS_MODULE", "planetstack.settings")
+# os.environ["DJANGO_SETTINGS_MODULE"] = "xos.settings"
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")
 
 # This application object is used by any WSGI server configured to use this
 # file. This includes Django's development server, if the WSGI_APPLICATION
