basic argparse implementation closes #4