How to arrange a package with submodules and multiple files?

Wrapping some common codes into a submodule can reduce the name pollution to namespace. And sometimes, the common codes are rather large.