Fixed a problem with disconnects encountered during recv().

Fixed an issue where a disconnect from the server may have occurred during an internal_recv() call, but we weren't detecting and disconnecting accordingly. Now we disconnect in a way that allows is_connected() to realize that we're no longer connected so that we can then re-connect.