Utility class to do more common tasks an application have to do to start running.
Application class that provides the standard features needed by command line tools: * Command line parsing * Version support
Application class that provides the standard features needed by applications that run as a daemon: * Command line parsing * Version support * Reading of config file * Auto-configuration of loggers * Periodic stats logging * Re-opening of log files upon receipt of SIGHUP (intended to be used in conjunction with logrotate)
Exception to raise to safely exit the program.