fix persistence of jobs in dicts
refactor experiment gen to be more generic
cache based on job size, not job
config updates
record margin along with scheduled boolean
make repeat runs take distinct run numbers