redesign socket server, part two, not yet