Singularize option name & metavar for dict & list args
Singularize option name & metavar for dict & list args

Context: dict and list args are specified on the command line by
providing one or more of the corresponding option.

Given a command def like so:

    @command
    def some_command(config, items=()):
        # Do stuff with items

Previously, passing multiple items from the command line looked like
this:

    run some-command --items X --items Y

and help/usage looked like this:

    -i ITEMS, --items ITEMS

which was potentially confusing.

Now it looks like this:

    run some-command --item X --item Y

and help/usage looks like this:

    -i ITEM, --item ITEM

Note: This applies only to option names that appear to be plural using
the simplistic heuristic of "ends with an s".

wylee/runcommands,wylee/runcommands