Add jobrunner. Add job.source() function and update _make_source_file_name