added a JSON socket. compiles but still not passing reliably
move some stuff around
message -> json_socket