Handle deduped rows

If a deduped row is factored into the common bundle, the target row should also become common.

This can cause an issue when the same dependency can be resolved to multiple paths, but only one of them becomes common.

A concrete example would be with using `assert` and `util` in your web project. The `assert` module is pinned to an outdated version of `util`, whereas browserify uses the latest `util`, resulting in `assert/util` and `util` being extracted to node_modules. Code that uses `assert` will transitively use the outdated version of `util`, which browserify can dedupe to its actual `util`. But if `assert/util` is used multiple times when `util` is only used once, a runtime error is thrown because the `assert/util` dependency on `util` is not available in the common script.

This fixes that :)