fix Listener end-of-stream behavior(with a test)
add documentation to Listener
hopefully improved message handling in PeerComms significantly thanks to Listener