TSocket: handle socket.error on read
TSocket: handle socket.error on read

Summary:
read(): translate socket.error exception to a TTransportException as already
done for open() and write() so that this exception can be properly handled
by the client:

```
  File "thrift/protocol/THeaderProtocol.py", line 152, in readMessageBegin
  File "thrift/transport/THeaderTransport.py", line 225, in _reset_protocol
  File "thrift/transport/THeaderTransport.py", line 255, in readFrame
  File "thrift/transport/TTransport.py", line 75, in readAll
  File "thrift/transport/TTransport.py", line 186, in read
  File "thrift/transport/TSocket.py", line 286, in read
error: [Errno 104] Connection reset by peer
```

Reviewed By: SergeyMakarenko

Differential Revision: D5172261

fbshipit-source-id: 89f50204f1cede9afe36076170cb70471121a6fa

SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,getyourguide/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,facebook/fbthrift,getyourguide/fbthrift,facebook/fbthrift,getyourguide/fbthrift,getyourguide/fbthrift,facebook/fbthrift,SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,facebook/fbthrift,getyourguide/fbthrift,facebook/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,facebook/fbthrift,SergeyMakarenko/fbthrift,facebook/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,facebook/fbthrift,getyourguide/fbthrift,SergeyMakarenko/fbthrift,facebook/fbthrift,getyourguide/fbthrift