Previously if submodules were imported after the plugin/symbol __path__s had
been set, it would only use the __path__s from the constants module.
We now use the parent module's __path__s to ensure we get the right
sub__path__s.
This seems better/more flexible than changing the original constants
(since they'd no longer be constant) and allows people more chance to
override things. It brings with it potential confusion as a local
plugin directory will need __init__ files with this magic to allow the
core modules to run (since they come first in the path list).