have a `NullSourceFile` 'proxy' the digest path if is a combination

The effect of this change is "recursive combinations".  This allows
you to specify combination digest paths in the source paths of
another combination.

Closes #50.