new API for TxReportQueue (fixes #128)

make an idiomatic version of the read size of the java.util.concurrent.BlockingQueue interface.
So, `breakOut` is kind of like revealing the man behind the curtain. At least without it, we can pretend that things behave as expected - since the input type guides the implicit inference, our output type will usually be something predictable. With `breakOut`, it's anyone's game :)