You can structure your modules and your tests such that you can test them independently, using unit tests and functional tests while mocking other services. This keeps each individual build, likely to be kicked off by a change in the revision control system, to a minimum. Integration tests using all the components together can be kicked off at larger intervals (twice daily, for example). These should always pass if all the individual module tests passed. If not, then your tests are incomplete.
I only run Windows in a virtual machine, and very rarely at that, so I can't answer your question. Sorry.
If you're running on an Intel platform, try running powertop. I can easily gain over an hour of battery life by disabling the services it recommends and reducing the screen brightness.
Except for the fact that cellphone calls interrupt a VOIP call, I'm rather happy with Skype on the iPhone for this.
The service is a "network DVR", basically moving the DVR capabilities from a box sitting in the user's home to a server at the cable company. IANAL, but from what I understand that's exactly how they won the lawsuit, by showing that it matched feature-for-feature with a home DVR.