Add some support for fetching compiler flags from plugins.

Two new methods are added to compiler toolchain plugins to
fetch most of the flags sent to the compiler. They don't
capture all the flags, because some depend on the kind
of target, eg -fPIC may be used for compiling code for shared
libraries and omitted for static linkage. Macros also aren't
included.

The purpose of this support is to somehow save these flags
as dependencies so if they're changed, e.g. by the user
on the flx command line or by using a different plugin
designed specifically to use different flags (eg optimisation
level), then the dependency checker will know to recompile
the sources.

Felix should probably save the absolute path of the compiler
itself as well, but it doesn't know what it is.

It would actually be better to save the *actual* shell command
used for the compilation, but this is a bit difficult because
of the way the dependency checking is isolated from the
construction of the shell command. So for the moment, this
should be "better" but not "perfect". Note it is sensitive
to changes in warning flags too, which don't change the
output. This is a good thing I think, because it allows
recompiling with more warnings.