extract deps and files in a similar way

This one just removes the `out` variable that is passed through all of the methods, and makes it work similar to how the `this.files` variable does. It makes it a little clearer what's going on hopefully. Later on it would be ideal if the `Duo` object didn't keep track of state, but that would require some more work probably. This for now though works well enough, and since both `files` and now `deps` get reset between runs, all tests pass.

/cc @MatthewMueller @ianstormtaylor