move to argparse instead optparse