docopt is quite nice, but it makes it almost too easy to generate highly complex argument options. Favor instead a few separate commands with simpler options.
As a very simple example, in unix we have separate 'cp' and 'mv' commands rather than a '--remove-source-file' option to 'cp'
As a very simple example, in unix we have separate 'cp' and 'mv' commands rather than a '--remove-source-file' option to 'cp'