Flatten the include directoies in gnu/guile

This is a little heavy handed, and might need to be version specific,
but I'm flattening out ALL of the parent directories in between
include and the actual header files.
Almost working rules for gnu/autogen

I have no idea why, but this has always been one of the trickiest GNU
tools to compile.  I finally got it to build successfully using the
latest guile, BUT the test suite bombs out badly, and how to debug it
isn't obvious. This is a low priority, because the only reason I need
this is to run the gcc test suite, which we've never bothered with.
This gets us one step closer, though.

For all intents and purposes, gcc rebuilds itself, which is a pretty
good test, and then we have always been able to use the resulting
build to compile the rest of the /efs/dist content. That's a pretty
good real world test, but one of these days, I want to be able to run
the gcc test suite.
Future proofing all hooks against the 5.20 upgrade

The single most annoying change in perl5.18 (which I am skipping) was
introducing warnings for the use of experimental features.  The switch
(given/when) is my favorite new feature in perl recently, and someone
decided you needed to be warned about using it, since it was going to
change in the future.  Maybe.

This conditional no warnings like will avoid those warnings when
upgrade efsdeploy to perl5.20, which is coming soon.