Interfaces for classes to be started and stopped via clients.config. Classes implementing the ClientApp interface will be controlled with the that interface instead of being started with main().

The benefits for clients using this interface:

- Get the current context via the constructor
- Complete life cycle management by the router
- Avoid the need for static references
- Ability to find other clients without using static references