Similar Items: Programming Distributed Collective Processes in the eXchange Calculus