Log uncaught IOExceptions instead of rethrowing them.

The application layer can handle these with a try/catch block in their
onResponse method if desired.

This prevents a crash for applications that haven't deliberately configured
their uncaught exception handlers.

Closes https://github.com/square/okhttp/issues/1049
Merge pull request #1103 from square/jwilson_1025_log_failures

Log uncaught IOExceptions instead of rethrowing them.