switch to use libsndfile for wav file loading, instead of my own hacky custom way
allow track generators to be null, renaming wavFileGen to fileGen, updating allowed file extensions to match libsndfile's