I've heard that you can get PulseAudio to connect to JACK, which in turn connects to ALSA. The idea here is that latency-sensitive applications that use routing will connect to JACK, while applications that connect to PulseAudio (like Skype, Firefox, etc.) don't care about latency. However I haven't been able to get this to work properly (why isn't this set up as the default on any of the distros I've tried this on?)