Add Restarter class that can be used to restart a running application when underlying class files change. The Restarter is automatically initialized via a ApplicationListener and automatically detects classpath URLs that are likely to change (when not running from a fat jar). See gh-3084