two timeout mechanism for watch/comm
added lirc
added test suite and some code beautifications