'Parse the options defined in the script\'s options class.
``UsageError``s are caught and printed to `stderr` and the script then
exits.
:param list arguments: The command line arguments to be parsed.
:return: A ``dict`` of configuration options.'

def _parse_options(self, arguments):

    try:
        self.options.parseOptions(arguments)
    except usage.UsageError as e:
        self.sys_module.stderr.write(unicode(self.options).encode('utf-8'))
        self.sys_module.stderr.write((('ERROR:    ' + e.message.encode('utf-8')) + '\n'))
        raise SystemExit(1)
    return self.options
