mrpdclient: mrpdclient_close() send a "BYE" before closing connection

The "BYE" message allows the mrpd daemon to free a client connection.
This commit thus prevent a leak risk by both sending this message and
closing the socket on client side.
My reason for reading the code twice is that mrpdclient_sendto() does not just return 0 or -1. So then I have to think that -1 is 0xffffffff and that |= of 0xffffffff will overwrite non- zero returns from mrpdclient_sendto(). That is what I mean when I say it is not obviously correct. Perhaps all this is 100% obvious to others. I personally think the |= type of operations should only be used on functions known to return either 0 or -1.