Fixed #19973 -- Replaced optparse by argparse in management commands
Documented optparse to argparse changes for management commands
Converted test management command to argparse

Keeping backwards compatibility with test_runner.option_list is
tricky and would imply transforming an optparse.Option to an
argparse.Action. I choose to introduce a backwards incompatible
change because it only affects testing, not runtime behavior.
Converted remaining management commands to argparse