Add a bit more to a song and fix some type issues in ASoundEngine
Use high-level haskell constructs to build music