Suggest breaking up codes.py into a module in the package
Description
I would suggest breaking the Code
base class, the FHIaims
class and Exciting
class in codes.py
into their own files and making codes
a module in the package.
I believe this keep the package structure much more clean as the software scales to support other "codes" besides FHIaims and Exciting.
Suggesting moving from the structure of:
├── bz_utilities.py
├── codes.py
├── __init__.py
├── prepare_input.py
└── structure_info.py
To instead be:
├── bz_utilities.py
├── codes
│ ├── code.py
│ ├── exciting.py
│ ├── fhaims.py
│ └── __init__.py
├── __init__.py
├── prepare_input.py
└── structure_info.py
This will help 1) keep a one-to-one relation for files to classes and 2) be easier to add new classes for new codes.
This issue is optional as part of my review for JOSS and only a suggestion.