Add option to return filename in generators and rename _iterator to _generator

The latter is because the function in question is actually a generator. Closes #35