revised how arguments are handled; functions take real args now, not argparse objects