monopam: skip virtual-library impls in Dead_lib detection
Virtual library implementations (stanzas with '(implements X)') are
linked solely on the basis of being the impl chosen for X. Their
modules don't have to appear in the consumer's source — that's the
whole point of the virtual/impl indirection. Flagging them as Dead_lib
is a false positive (e.g. helix.jx.jsoo for ocaml-globe/demo).
Track impl libs in a separate set in the build_lib_index, and skip
them in dead_libs_in_subtree. Renames build_lib_modules to
build_lib_index since it now returns a (modules, virtual_impls) record.