'Called upon context.<key> - looks up the value for the <key>
attribute. Falls back to current.request if the attribute is
not defined in this context.
@param key: the key to lookup'

def __getattr__(self, key):

    if (key in self.__dict__):
        return self.__dict__[key]
    sentinel = object()
    value = getattr(current.request, key, sentinel)
    if (value is sentinel):
        raise AttributeError
    return value
