Attempt to dedupe deps when fullPaths is on.

Many front-end modules can't handle being loaded twice. Browserify doesn't dedupe dependencies when you use the `fullPaths` feature and `fullPaths` is necessary for watchify to cache results and quickly rebuild bundles on incremental changes.

This problem is particularly noticeable when trying to `npm link` to dependencies that have redundant dependencies.

This PR coaxes browserify to dedupe dependencies even when fullPaths is on. I'm not sure I understand the different code paths in _dedupe yet so this PR is likely missing some crucial edge cases.