command file dependencies extended

they now include all component headers plus all public headers from the
component's dependencies.
This allows us to detect changes across components and recompile
correctly.