add logging
Use argparse