Always disable sound device when idle

Ignore-this: 24b505b07835d3672c9a612c59d065a8

darcs-hash:20130419141225-56b4d-a48464ef523631a19e2097c1aca9fd10235a7c10
Use a heap to store timers

Ignore-this: 7e4435bbf89b94687f03b42fedb2c691

darcs-hash:20130418072017-56b4d-8b853e839822a55d07de21ddb9149ef7e7c71987