Nice - thank you for sharing - it looks great.
Curious, did you have a particular use case in mind for the userId/password for ConnectAsync (or just simplified method of adding to cookies and/or headers)?
Task ConnectAsync(string userId = null, string password = null);
In the updated version I've been working on since Nice shared his
, I too have added ConnectAsync to leverage await functionality...but have been working on that signature.