Leaver problem? Best solution
I think that the best and most simple solution to handle leaver problem is:
If you leave mid game, your next game can only be one in wich someone already left. Just one. Ofcourse when you leave again, guess what...
This makes the leaving absolutely pointless. Leavers can't escape. They will have to wait till the end of game no matter what.
If you have to leave game becouse other reasons it isn't also to harsh punishment. Maybe 5-10 minutes of waiting/playing unfavorable match. Not a biggie.