argparse instead of the optparse, better help
More useful defaults with choices, default, and required