I like Idea 3 - when you say ```@art_files = @job.get_art_files('separations')``` its clear exactly what you're doing, and hides the "ugly"ness inside the model - its sending a message to the object to say "this is what I want"

I use the analogy of going to lunch with someone.  When the bill comes, I don't reach into your wallet and ask you which credit card I should use then ask you for a sample of your handwriting, I just say "Jay, please pay this bill" - its up to you to figure out how that happens (or if it happens at all! :D )