fix `npm ls` labeling issue

**NOTE**: This patch requires the `read-installed` package to be updated as well to pass the tests. See https://github.com/npm/read-installed/pull/24

Old problem from #4179: when a dependency's depth equals the specified max depth, it does not get properly labeled as "Unmet dependency", "invalid" or "extraneous".

This problem stems from the `read-installed` package which is not handling this edge case properly. It simply returns a string with no problem information when depth==maxDepth.