Introduces 'PackageResolver' tests.
Fixes identification of third-party packages.

Third-party packages are determined by a '+' character in their name.
Previously, if the entire path to the package contained a '+' character it was
considered a third-party packages.  This commit strengthens that requirement to
the specification.