Related to #2. It would be nice to allow users to re-define what it means to stop/start. e.g. which lifecycle methods to use. This would make it possible for user-space to add-in #1 without losing the managed state & exception handling that's bundled in (although it should be investigated whether that's still useful!)