Update build configuration to use NX 2.10.0-SNAPSHOT
Update version of this plugin to 2.10.0-SNAPSHOT
Clean up poms
Change groupId to org.sonatype.nexus.plugins
Drop some unrelated cruft
Update a few straggling groupId refs
Merge branch 'master' into nexus-2.10.x
NX-633: Preserve case on npm package requests

Some npm packages contain capital letters (e.g. StringScanner), and so
converting package requests to lowercase causes requests for these
packages to fail

PackageCoordinatesTest UT fixed too to pass.

Upstream PR
https://github.com/georgy/nexus-npm-repository-plugin/pull/15

Squashed commit of the following:

commit 513331c23dd96fdbac5b757a101d594c8ff58a6b
Author: Steve Carlucci <scarlucci@sonatype.com>
Date:   Tue Aug 26 09:06:05 2014 -0400

    Preserve case on npm package requests

    Some npm packages contain capital letters (e.g. StringScanner), and so
    converting package requests to lowercase causes requests for these
    packages to fail
NX-634: Construct tarball url for beta versions correctly

Upstream PR
https://github.com/georgy/nexus-npm-repository-plugin/pull/17

Squashed commit of the following:

commit 01aa580292e0f1a7b345a922e47388feea69b266
Author: Steve Carlucci <scarlucci@sonatype.com>
Date:   Tue Aug 26 09:18:48 2014 -0400

    Construct tarball url for beta versions correctly
NX-684: Registry root expiration fixes

Changes:
* NX Core handled NPM MD as expired (as it sees it as coming from localstorage/cache)
* NPM Proxy MD service had a bug, that considered NPM reg root always as expired as it was incomplete
* Assure that registry root update does not happens concurrently
* improved logging with some TRACE logs
* added IT ensuring that once cached, registry root is not re-fetched
* IT improvement: fixing path recorder lifecycle

Upstream PR
https://github.com/georgy/nexus-npm-repository-plugin/pull/18

Squashed commit of the following:

commit c18e6969749ad225dd4cbf2e89b9251e20847d64
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Wed Aug 27 12:55:08 2014 +0200

    NX-684: fixing path recorder lifecycle

    As it was created when mock registry was. Now it's re-created
    per each start, to avoid possible interleaves of recorded data
    from previous runs.

commit 4f1a8146b2c11453932421f493296929fe64ead7
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Wed Aug 27 12:48:08 2014 +0200

    NX-684: Assure that registry root update does not happens concurrently

commit 4fdc06a47e10d7c363a4c1f94867e2043447d3ff
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Tue Aug 26 15:52:21 2014 +0200

    NX-684: Registry root expiration fixes

    Multiple problems fixes and improvements added:
    * NX Core handled NPM MD as expired (as it sees it as coming from localstorage/cache)
    * NPM Proxy MD service had a bug, that considered NPM reg root always as expired as it was incomplete
    * improved logging with some TRACE logs
    * added IT ensuring that once cached, registry root is not re-fetched
NX-685: Improve "incomplete" document detection

Instead of testing for "latest", "stable", etc just
accept the fact that versions map is Map<String, String>
and in that case create incomplete documents for all entries

This fixes the NX-685, as it was caused by the problem that
document was not detected as incomplete, hence, on package
root fetch the document was not fetched from registry to
have the non-incomplete version.

Also added some TRACE logs

Upstream PR
https://github.com/georgy/nexus-npm-repository-plugin/pull/19

Squashed commit of the following:

commit 0dd0415d3c271ca35c41870bd3c2bb1a9bfe3877
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Wed Aug 27 12:27:10 2014 +0200

    NX-685: Added diagnostic logs

commit b05643dc5f3c7ee433a72d008ea8861763b1d8cf
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Wed Aug 27 10:39:46 2014 +0200

    NX-685: Simplified, scope and javadoc

commit b02d384ea5c1c119652bf9073ea2c14c4719b472
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Wed Aug 27 10:33:56 2014 +0200

    NX-685: Proper fix and UT for tag handling and shrinking

    Changes:
    * proper shrinking implemented, no need for "dist-tags" and/or "latest" tag existence
    * renamed shrink method to better reflect what it does
    * added UT

commit 310f4a6d62187adcc39f9942a7c5158a45798d04
Author: Tamas Cservenak <tamas@cservenak.net>
Date:   Tue Aug 26 21:23:12 2014 +0200

    NX-685: Improve "incomplete" document detection

    Instead of testing for "latest", "stable", etc just
    accept the fact that versions map is Map<String, String>
    and in that case create incomplete documents for all entries

    This fixes the NX-685, as it was caused by the problem that
    document was not detected as incomplete, hence, on package
    root fetch the document was not fetched from registry to
    have the non-incomplete version.
Merge branch 'sonatype-master' into nexus-2.10.x
Updated README with recent info and some guide
NEXUS-6754: Fixing provider name to lowercase

As per discussion and Steve's proposal
Merge branch 'sonatype-master' into nexus-2.10.x
NX-620: Support for offsite tarballs

Added support for offsite tarballs, some bugfixes
and refactored the plugin to use more sane
packages.
NX-620: Applied comments
Removed two content related classes, squashed into one, simpler
Added the new blob class
Merge pull request #5 from sonatype/NX-620-offsite-tarballs

NX-620: Support for offsite tarballs
Reformat, no code change.
reformat tests, no code change.
Improvement to prevent regroot fetch at proxy and group creation

As UI will ask for repo root (first screen shown on UI after
creation is browse storage), that would kick in with complete
registry root fetch. This is ugly, as not only puts huge load
on server, but also inevitably timeouts and shows an error in
UI.

So, we step back a bit from spec (by serving metadata from path
"/") as npm CLI uses "/-/all" path for that anyway.

But this improves user experience by not fetching regroot and
not having an error in UI.

npm search is anyway not quite used feature of npm cli. So,
originally the fetch happened was maybe even unnecessary.
Ignore test expecting registry root from '/' path