make cli it's own event-emitting module

- This makes it much easier to test (coming soon)
- It also removed a lot of business logic from the bin
  file, which is a great thing
- Made a couple other small fixes to the cli file introduced
  by the previous refactors
- Added colors to the output, removed feedback as its no
  longer necessary with the emitter
- Basic manual testing verifies that it still works
- Real unit tests coming after this, whoo!