Fix ODE in client caused by setting AbortResetEvent after abort timeout

#1848
Prevent deadlock when aborting transport in .NET client

- If an HttpBasedTransport is already disconnected when Abort is called,
  Abort should complete immediately
Dispose IResponse in ReadAsString
CompleteAbort instead of TryCompleteAbort when abort request fails
Merge branch 'release' into dev