make .m be objective c
add an argparse version of main
update defs