Apparently, had not been protecting accesses to tcp output stream when writing messages.  This was bad because meant that could get write-write conflict when endpoint sends two messages simultaneously.  Makes message impossible to decode.  Hopefully fixed.