ensure job config exists and is valid, fixes #15