use ws package instead of broken express-ws

server:
 - move socket logic to separate file
 - send to all open sockets on receive message

client:
 - attempt to reopen closed socket every 1s
 - show messages in DOM