Allow listening to domain consoles

These commits are aiming at mapping the necessary API to listen on stream and file changes to attache the console of a container.

The stream callback test is somewhat hacky, but we need to have a long running program writing data to stderr/stdout in the test container to have time to connect to the console and grab the events. And of course this all works with PR #35 to run the tests.
This is racey, saw it cause send on a nil channel at L107. Maybe not critical since its a test but it should wait for the goroutine to complete before closing the chan