Cli tests

Opening this up for further discussion. Closes #450.
I think this can be done linearly:

```go
// signal.Notify
// register discoverd
// block on signal
```