'Initialize a command object.'

def __init__(self, cmd_prefix, argument=None, flags=None, boolean_flags=None, force=None):

    if isinstance(cmd_prefix, list):
        cmd_prefix = map((lambda x: x.strip()), cmd_prefix)
        self.cmd = '    '.join(cmd_prefix)
    else:
        self.cmd = cmd_prefix
    self.arg = None
    self.flags = {}
    self.booleanFlags = {}
    if (argument is not None):
        self.set_argument(argument)
    if (flags is not None):
        if isinstance(flags, list):
            for flag in flags:
                self.add_flag(flag[0], flag[1])
        else:
            for key in flags:
                self.add_flag(key, flags[key])
    if (boolean_flags is not None):
        for flag in boolean_flags:
            self.add_boolean_flag(flag)
    if force:
        self.force_command()
