even more complicated server stuff with multiprocessing