Remove notion of primary target. All the targets now contribute to the dependencies.
Optimize lookup in find_rule for the general case (single target).
Use the latest file rather than the oldest one in multi-target rules, so as to allow unmodified files and time-stamp files.
Detect unmodified targets and assume delayed clients successfully completed without running them.
Update documentation.