Handle multiple and expanded sources properly

`done` should only be called once, but was called multiple times if
either:
- The `src` option was set to an array of files.
- The `expand` option was enabled and that expanded to more than one
file.