Reduce code duplication for Start() method.

All the interactor subclasses had duplicated code in their Start()
methods, so I moved the common code into the superclass, and made a
new protected method called StartEventLoop() that contains all of
the OS-specific code.

Change-Id: Ib710fad013aa9400d21241cf285c23b4a6cdad9f
Fix Initialize() and Start() interactor documentation.

Change-Id: I2ab1c29b395d1f24089913ed30905312f9ad8a05
Merge topic 'consolidate-interactors' into master

55e5b2ec Fix Initialize() and Start() interactor documentation.
5dbbc8e9 Reduce code duplication for Start() method.