class Root(object):
    """ 
    The main root object for any traversal
    """

    __name__ = None
    __parent__ = None

    def __init__(self, request):
        pass

    def __getitem__(self, key):
        next_ctx = None

        if key == 'user':
            next_ctx = User()

        if key == 'domain':
            next_ctx = Domains()

        if next_ctx is None:
            raise KeyError

        next_ctx.__parent__ = self

        return next_ctx

class User(object):
    __name__ = 'user'
    __parent__ = None

    def __init__(self):
        pass

    def __getitem__(self, key):
        raise KeyError

class Domains(object):
    __name__ = 'domain'
    __parent__ = None

    def __init__(self):
        pass

    def __getitem__(self, key):
        raise KeyError

@@ -717,32 +717,264 @@
 :%0A        pass%0A%0A
+    def __getitem__(self, key):%0A        next_ctx = Domain(key)%0A        next_ctx.__parent__ = self%0A%0A        return next_ctx%0A%0Aclass Domain(object):%0A    __name__ = None%0A    __parent__ = None%0A%0A    def __init__(self, key):%0A        pass%0A%0A
     def __getite

Add traversal to domain