'Returns the last draft root node if no position is specified.
If a position is specified, returns the draft root node in the
given position raising an IndexError if no such position exists.'

@classmethod
def get_draft_root_node(cls, position=None, site=None):

    nodes = cls.get_root_nodes().filter(publisher_is_draft=True)
    if site:
        nodes = nodes.filter(site=site)
    if (position is None):
        nodes = nodes.reverse()
        position = 0
    return nodes[position]
