Make PreserverCultureAwaiters structs like TaskAwaiter
Let'sMakeADeal - adding support for Negotiate to the store WebSocketTransport.
RavioliCompositionOverSpaghettiInheritance - refactoring usage of WebSocketHandler on the client

WebSocketHandler class is used on the server and on the client. While on the server we just instantiate this type on the client the WebSocketTransport derives from it. This blocks creating a base class for client transport which would contain a common functionality (e.g. parsing the response). After this change WebSocketTransport no longer derives from the WebSocketHandler but instantiates it and uses it internally.