Introduce more flexibility for QA generation output persistence
Right now, the output file for QA generation is specified in GenerationOptions, as used in QA gen here.
When using this to write a demo notebook in #11 and wanting to output multiple datasets from multiple documents in a 1:1 fashion, encapsulating the output method into GenerateOptions requires more complexity than allowing generate_from_chunks and friends to take a parameter specifying where to output, which is some usability friction.
A more general question is visiting which options should be in the *Options classes passed to constructors and which should be method parameters. Things like api_key definitely make sense where they are, but maybe others - temperature is another example - should probably have the existing defaults but also be overwritable in function calls.
See also #41. It might make sense to address both this and #41 in the same PR and sort out all the output persistence issues at the same time.