> def page(title="Default Title"):
>     def decorator(content_generator):
>         def full_page [html] (*args, **kwargs):
>             ensure_signed_in()
>             header(title=get_hit().get_info().get("title", title))
>             content_generator(*args, **kwargs)
>             footer()
>         return full_page
>     return decorator
Oops. That should be:
def page(title="Default Title"):
    def decorator(content_generator):
        def full_page [html] (*args, **kwargs):
            ensure_signed_in()
            content = content_generator(*args, **kwargs)
            header(title=get_hit().get_info().get("title", title))
            content
            footer()
        return full_page
    return decorator
Dave