added logging, config file, and cli, compiles and runs with the commands not implemented