1. To do some name lookup stuff ...

2. Put in timeouts on sends and receives of data ...

3. Handle protocol errors and keep alives?

4. Rework RFCNB_Get_Pkt, it is too complex

5. Modify RFCNB_Put_Pkt and RFCNB_Get_Pkt to use writev and readv
   Partially done.

6. Rework RFCNB_Get_Pkt such that if the caller does not include enough
   space for the packet, a variable left_over is set with the amount
   left and a flag More passed as last param of RFCNB_Get_Pkt is set.
   This allows implementations to gracefully handle cases where more
   data than they expected was sent. If caller does not call
   RFCNB_Get_More to get the remaining, then on the next call to
   RFCNB_Get_Pkt, remaining data for previous packet is flushed.
