Refactored some functions which will require users to make some changes to there code but will simplify their code so they only need to process_tools_mod and process_tools_cls variables to the PBPTGenQProcessToolCmds constructor and then they do not need to provide implementations of the run_check_outputs and run_remove_outputs functions.
Also, adds back lock file when getting a job from the queue.