Mock out a basic cli structure

This may seem overly compilcated, but as new commands are added, you will not regret it. Also, its easy to test :grinning: