Advances In Methods, Algorithms And Software For Optimization And Simulation Of Kidney Paired Donation Programs