split out batch classes (ref #169)