Refactored ToneGenerator and SilenceableWaveFile to the new sound API

Ignore-this: 34092c1c318207f758244e79c7199f4

darcs-hash:20090720100501-1e3d8-12627b8a1d2bc84b239046f9e3f84ff930ab2946