cliinterface: refactor the replacement of ListArgs
This also adds unit tests for cli7z, clirar and cliunarchiver
Differential Revision: D1251