ENH: Better Pulse use

This allows cleaner use of `Pyglet` audio, and adds file-playing functionality to `play_sound`. Ready for review.
This is something that I'm trying to add upstream (as of about two months ago), but we don't need to wait for it to be merged (replicated here):

https://code.google.com/p/pyglet/issues/detail?id=738