My understanding is that this cleanup pass is an intermediate stage: the final stage will be to mostly combined the small wrappers into larger wrappers. That is stated as the justification for not having pybind11 import statements in the wrappers. But I am not very happy about this. I would much have this code be correct, with the imports in place so that the modules are self-contained, as we expect them to be. That way we can take our time about the final cleanup pass.
But even if we do decide to go for a quick and dirty solution for imports, for now, something needs to be done because as far as I can see many imports packages are not being imported anywhere, not even the __init__.py files. This makes the code needlessly fragile.
I'll put this back into In Progress.
I still think they ought to go in the pybind11 files. But won't need nearly as many of them once we merge things into larger modules, because all of the intra-package dependencies will already be accounted for.