socket.recv can return less data than requested

closes #OPENTAR-33