Another problem is people don't like leaving their cars to get the next day. In Sydney we have/had a service where small scooters come and drive you home in your own car (the scooter fits in the car boot): http://www.scooterangels.com.au/ It might be easier to get volunteers for this as you're not putting drunks in your own car + people get their car in the morning. Lie above you might be able to get some bars/council to fund if you want this to be free.
In general I'd expect self driving cars to fix this issue over the next 10 years or so.