Shuffle connection logic needs correction

Details

Description

While looking at the code with Amareshwari, we realized that Fetcher#copyFromHost marks connection as successful when url.openConnection returns. This is wrong. Connection is done inside implicitly inside getInputStream; we need to split getInputStream into connect and getInputStream to handle the connection and read time out strategies correctly.