AL improvements

Looking at issues like #2064 reminded me that I had some AL improvements locally.
This adds alIsSource and alcGetIntegerv and also improves alGetString to return more useful values. I've got some more changes, but they're not quite finished.