Add initial restarting loop.
Ensure all the wrappers are available as we may need to recreate plugins later if they fail during runtime.
Reinitialize the plugin upon its death with a newly created one in a loop.
Add a log message so its easy to see that the runner is restarting the plugin.
Ensure we handle plugin creation failures, catch them, and retry with the sleep until we're sleeping or have succeeded.
Add input runner restarting, change min reconnect period to half a second.
Higher retry time.
Use plugin field consistently for Input() method.
Merge branch 'dev' into features/plugin-restarting
Make sigChan available for ShutDown command.
Call shutdown if the plugin dies and is not supposed to restart.
Update docs to describe plugin restarting behavior.
Add docs on implementing restarting behavior.
Special case lua sandbox filter to let it shut down without bringing head down.
Use the right sandbox filter reference.
Fix typo, update for new interface.
Update to allow a plugin to decide when to exit.
Add tests for stopping input and output.
Merge branch 'dev' into features/plugin-restarting

Conflicts:
	pipeline/pipeline_runner.go
Add pack retaining.
Switch back to using Cleanup.
no message