Added volumechange event that actually works. All non infinite events delete themselves once they are done executing. Minor fixes and cleanups