completed rough draft of cli program flow