UDP chat server
UDP packets that are received are decoded as JSON and then sent to every address that has previously successfully delivered a message.
cd src/gimmel
stack run
jo to=2 msg=hi | nc localhost -u 1337
{"to":1,"msg":"hi"}
{"to":1,"msg":"hi"}{"to":2,"msg":"hiback"}
jo to=1 msg='hiback' | nc localhost -u 1337
{"to":1,"msg":"hiback"}