- address issues that came up in the pull request
- fix bugs found with further testing
- make it possible to have a callback function when the sound stops