Implement multiple audio channels

To allow the same sound resource to be played multiple times without resetting, create a bank of audio elements that we use as different "audio channels".  This is pretty basic; there's probably more functionality we could add here.
Handle case where no assets are loading