public int run(List<String> args) {
        return run(args.toArray(new String[0]));
    }
Runs the CLI using a list of arguments.

@param args Arguments to parse and execute.
@return Returns the exit code.
smithy-cli/src/main/java/software/amazon/smithy/cli/SmithyCli.java