Distributed optimization with arbitrary local solvers | Synapse