There is an unsaved comment in progress. You will lose your changes if you continue. Are you sure you want to reopen the work item?
Make Context a required parameter to the creation of a FileGenerator
Rather than have it as a property that's set, make it required on construction (as Generate() in FileGenerator will throw an exception anyway...this will get rid of a custom exception as I can throw ArgumentNullException, which would make more sense).