I am generally opposed to putting things in `__init__.py` that could otherwise be elsewhere. The cleanest design seems to only have `from ._whatever import something` lines in `__init__.py`. By putting things that have gone into this `__init__.py` to other files (like `_visual.py` perhaps), the filename is a *lot* more informative about what it contains. It makes it much easier to tell what's going on with the code both structurally and functionally when debugging, reviewing, etc.