Allow wildcards in target patterns for one-to-unknown-many matching

The '*' is used as a single wildcard, e.g.

    $./AUTO_%.INSTANCE.*.h: $./%.t.h

In the case any dependency that matches the wildcard, e.g.
AUTO_foo.INSTANCE.somestring.h, will have an automatic rule for it.

Essentially, this can be used for templating.

Only one '*' can be provided, and it can be provided only in the
suffix.