extracted JobStarter.java from WebContextJobStarter.java, so WebContextJobStarter.java is only listen for servlet lifecycle and delegate all job-creation and scheduling to the JobStarter.java