'Start Xephyr instance
Starts the Xephyr instance and sets the `self.display` to the display
which is used to setup the instance.'

def start_xephyr(self):

    for _ in range(2):
        self.display = ':{}'.format(_find_display())
        args = ['Xephyr', '-name', 'qtile_test', self.display, '-ac', '-screen', ('%sx%s' % (self.width, self.height))]
        if self.two_screens:
            args.extend(['-origin', ('%s,0' % self.xoffset), '-screen', ('%sx%s' % (SECOND_WIDTH, SECOND_HEIGHT))])
        if self.xinerama:
            args.extend(['+xinerama'])
        if self.randr:
            args.extend(['+extension', 'RANDR'])
        self.proc = subprocess.Popen(args)
        start = time.time()
        if can_connect_x11(self.display):
            return
    else:
        self.display = None
        raise AssertionError('Unable    to    start    Xephyr,    quit    with    return    code    {:d}'.format(self.proc.returncode))
