Fixed a bug for adding additional commands to the job, made it so that only one job is created since all commands are children of the shell thread, and added a job id to job, and moved the generation of job after the backgroud thread is made ready