Break out the TaskProxy class

- Move logic for processing files into a TaskProxy class
- Eliminate need to pass file, name, and opts to every function