Remove relative and circular imports #146
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The pull request will function as a base pr that I'll break out into smaller, more manageable, pull requests.
I had originally intended to convert the deltametrics many relative imports into absolute imports and to directly import objects from modules, rather than importing the modules themselves. I find absolute imports easier to read and follow than relative imports. deltametrics is small enough that it's not a big issue yet, but, still, I figured it would give it a go. Absolute imports can also expose circular imports, which is exactly what happened here.
I realize things were working before, but I hope these changes will make things a little easier to read and more robust to future changes. The circular imports may point to some design issues that we may wish to discuss in the future but which I don't address here.