DefaultAuthenticationProvider.Connect should run asynchronously

Client.Connect was actually running synchronously. I just wrapped the entire thing in a new task instead of having separate tasks for each of the GetRequestStream/GetResponseStream calls.  Let me know if you'd rather this be separated out.