cleaner code
update deps
move thing to socket-cl2
move thing to cl2-contrib
update new api
use new socket-cl2 macros
rewrite client app with new api