Sound modularization

Abstracts away need to provide instanceIDs to stop a sound. Just a name can be provided. soundDatums within a LayeredSoundDatum renamed to soundLayers to better represent function. @kadst43 @BrettASwift 
I might just call it "layers".