Initial Websockets Implementation

This PR is to give the maintainers an overview of the status of the websockets implementation.
Most likely things will change (like build variants), but this should be useful as common grounds.
This method needs to be heavily refactored.