websockets support
handlers refactor