misc
argument parser
cleanup