Use the modern version of MiniTest base class
Reset state at the start of the run
Ensure that all variables are assigned, even if they are just assigned nil
Reset more state in test
Initialize variable
Remove enable_ from attribtue setters
Set some instance variables
Move writer close to accessor
Duplicate options to avoid modifying it and remove module_groups and imports to process specially
Add a mass assignment helper and use it in the constructor
Simplify the config of import and modules
Extract add_module_group
Remove duplicate overwritten initialize method
Ensure modules variable is initialized
Rework the DatabaseDefinition so that the yield happens in the constructor
Add some basic tests around database definitions