def _handle_options(self, option_line):
        '''
        Handle options from command line, in docopt style.
        This allows passing arguments to the fuzzer from the command line
        without the need to re-write it in each runner.

        :param option_line: string with the command line options to be parsed.
        '''
        if option_line is not None:
            usage = '''
            These are the options to the kitty fuzzer object, not the options to the runner.

            Usage:
                fuzzer [options] [-v ...]

            Options:
                -d --delay <delay>              delay between tests in secodes, float number
                -f --session <session-file>     session file name to use
                -n --no-env-test                don't perform environment test before the fuzzing session
                -r --retest <session-file>      retest failed/error tests from a session file
                -t --test-list <test-list>      a comma delimited test list string of the form "-10,12,15-20,30-"
                -v --verbose                    be more verbose in the log

            Removed options:
                end, start - use --test-list instead
            '''
            options = docopt.docopt(usage, shlex.split(option_line))

            # ranges
            if options['--retest']:
                retest_file = options['--retest']
                try:
                    test_list_str = self._get_test_list_from_session_file(retest_file)
                except Exception as ex:
                    raise KittyException('Failed to open session file (%s) for retesting: %s' % (retest_file, ex))
            else:
                test_list_str = options['--test-list']
            self._set_test_ranges(None, None, test_list_str)

            # session file
            session_file = options['--session']
            if session_file is not None:
                self.set_session_file(session_file)

            # delay between tests
            delay = options['--delay']
            if delay is not None:
                self.set_delay_between_tests(float(delay))

            # environment test
            skip_env_test = options['--no-env-test']
            if skip_env_test:
                self.set_skip_env_test(True)

            # verbosity
            verbosity = options['--verbose']
            self.set_verbosity(verbosity)
Handle options from command line, in docopt style.
        This allows passing arguments to the fuzzer from the command line
        without the need to re-write it in each runner.

        :param option_line: string with the command line options to be parsed.