Enables a simple client side way to engage handling SSE events with all
the capabilities that go with it. Also fixed an issue with WebSocket not
working for every JDK 11+ implementation due to default interface
implementations not always being properly defined out.
Created a friendly native support for using the JDK 11 HttpClient to
open up a proper websocket connection for use as a client in the
traditional kotlin friendly style of doing things.
Also added the ability to make PATCH rest calls via the client.