I looked through the code for this today in detail. For the most part, the methods look fine, and I think any major methods we miss can be added, or existing ones tweaked over the next few months. The one thing that seems missing is pulling back the step execution information with it. Isn't having a running JobExecution useless without it's StepExecution (that's actually running?) I would expect when using the interface that a JobExecution that is listed as running would have all the StepExecutions with it, or at least some way to get the information separately.
I keep going back and forth on the interfaces and implementations, in some ways I like it, in others I don't, but in thinking on it again, I might be okay with it, etc. I think I just need to build an actual client against these interfaces to see how it stacks up. (I suppose you're already doing some of the same via JConsole)
I can take a crack at
BATCH-453 tomorrow as well.