update to support command line options and makefile