added support of TCP for parallel_reduce
safer interface without && + fixed move bug