Quick demonstration of branching/first pass at RosActivityLifecycle.

@damonkohler

Here's an example of a pull request.  Is this roughly the right way to do things?  I see some obvious issues, like the abstract void init function requring the nodeMainExecutor.

This pull request should NOT be merged as is.  :)