So today's primary bogus result is courtesy of is due to leaving
public headers hiding in modules/class/*.h paths for our builds.
I'd suggest one of two approaches, pick a favorite solution?
[ ] Have the top level build copy all modules/*/mod_*.h
definitions to the build tree include/ path (conditionally,
based on datestamp)?
[ ] Make individual modules/*/Makefile[*] responsible for
moving their headers into the build tree include/ path
(conditionally, based on datestamp)?
Advantage to option 2 is that we could add magic to exclude
those headers for modules not built.
Advantage to both options is that we eliminate all of the
module-specific cross-module-class inclusions.
Overall logic change should be close to nill, since the
'make install' path no longer needs to be smart enough
to look throughout all of the modules/*/mod_*.h files for
the target installation. What doesn't end up in include/
wasn't needed for the target install tree anyways.