engine.py has grown to 500 lines and includes many kinds of methods and classes, the accessibility level of which is not obvious, either. This module would be more manageable and understandable if broken into two or more modules and accessibility levels were clarified. Chiefly, it has many methods that are used by just one method and one class, namely get_outputs_normalized and Home, the former of which depends on the latter. Ideas about and discussion of where to begin this process would be welcome and could ultimately contribute to a codebase that is easier to develop later.
Its only external access should be from get_outputs_oil_propane, get_outputs_natural_gas, and get_outputs_normalized.
engine.py has grown to 500 lines and includes many kinds of methods and classes, the accessibility level of which is not obvious, either. This module would be more manageable and understandable if broken into two or more modules and accessibility levels were clarified. Chiefly, it has many methods that are used by just one method and one class, namely get_outputs_normalized and Home, the former of which depends on the latter. Ideas about and discussion of where to begin this process would be welcome and could ultimately contribute to a codebase that is easier to develop later.
Its only external access should be from get_outputs_oil_propane, get_outputs_natural_gas, and get_outputs_normalized.