Peer dep extraneousness inherits from peer

Fixes regression introduced in c46e5a8, where peer deps were improperly
marked as extraneous if they are only depended on as a peerDependency.

This inheritance is important, because a situation can arise where a
devDependency (in non-dev mode) will be marked as extraneous.  However,
it may have a cyclic peer dependency, causing it to be marked as
required.

This way, at least one of the peer dependencies has to be not marked as
extraneous, or else they all will be.
I would really like more descriptive variable names here.