Cluster: fixed a bug in clusterSendPublish() due to inverted statements.

The code used to copy the header *after* the 'hdr' pointer was already
switched to the new buffer. Of course we need to do the reverse.
Cluster: use non-blocking I/O for the cluster bus.
Cluster: clusterReadHandler() reworked to be more correct and simpler to follow.