add tests, lib folder to the consoleapp

@sethladd, add tests and a `lib/` folder to the console app.
Thinking about a better name: `app.run()` ?

What style/structure do we want all our console app developers to do? Import an `app` library with a `run` ?