def run(argv = ARGV)
      Hutch::Config.initialize
      parse_options(argv)

      daemonise_process

      write_pid if Hutch::Config.pidfile

      Hutch.logger.info "hutch booted with pid #{::Process.pid}"

      if load_app && start_work_loop == :success
        # If we got here, the worker was shut down nicely
        Hutch.logger.info 'hutch shut down gracefully'
        exit 0
      else
        Hutch.logger.info 'hutch terminated due to an error'
        exit 1
      end
    end
Run a Hutch worker with the command line interface.