I would say the ideal PUG system would be one that's a combination of TF2Lobby and the current PUG channels.
You would have official "channels" that are for PUGs/mixes meant for certain skill levels, and then the user PUGs/mixes/lobbies. PUGs would be the standard captain system, mix would be like normal (non-captain) tf2mix, and lobbies would just be like TF2Lobby.
In addition, it would be best to make an in-browser VoIP program of some sort. This is what EA did with Battlefield (while it is EA, it makes sense for our purposes). This would (hopefully) allow for the benefits of Mumble without the hassle of having new players set it up, at most you'd need a plugin. However, even this has problems as the players will still need to have a recent browser (at least IE8 at this point); we can't be supporting IE6 and 7 as IE8 is available on XP SP2 and greater. IE8 support is necessary, as IE9 and greater are not available for XP. We definitely should not use the in-game voice chat though, it's horrible.
I have no web coding experience besides a little HTML, so it would be nice to have web developers weigh in on this.