better web socket handling, updated models