Networking is hard. Especially when combined with threading.