Include the cause when raising a new IOException

I get a "Cannot connect to peer node" exception occasionally, but I haven't been able to figure out the root cause.  Searching the list, others have had similar problems.  This patch should make the reason for the exception clearer.