refactor ProgramLoader, RunProcess to remove static state

**please review**
Send the loader as a parameter to getSdfForPrograms instead of making it as an object.
This function doesn't need to be instantiated to work. Static is fine in this case.