Make PbD Testable

I integrated `rostest` into PbD (which is based on Python's `unittest`), as well as code coverage. I've added a few tests to demonstrate this functionality, and will add more. The tests run with one command in simulation, but I'm realizing now that they might actually work on the real robot. I'll try that next.

The other major change is I've renamed the launch files to be clearer. I've documented this on the readme, but the main thing to remember is that running the demo will use different commands. We can discuss this if it will be troublesome with muscle memory :-)

I've attached a couple screenshots, one of the code coverage overview, and one of what it looks like on a single file. It makes it easy to tell where we need to extend tests to exercise more code.

![coverage_overview](https://cloud.githubusercontent.com/assets/1170062/3449887/97460de2-016e-11e4-83a8-cc87cb156367.png)

![coverage_function](https://cloud.githubusercontent.com/assets/1170062/3449888/9cc652d6-016e-11e4-9578-99b02ad10235.png)