Changes stemming for weekend talk with JD

Loosely relates to local storage improvements

Changes:
* Cleared up nullability of storage context: local is never null, remote is never null (unless a bug, hosted repo casted to Proxy and invoked getter for remote)
* Cleaned up "lazy" creation of storage context, caches and other stuff in Repositories (hosted and proxy)
* Moved thread management from registry (made it simpler) to proxy repo who's thread it is (as we introduced dispose)
* Added Override annotations for early warning (to ease refactoring)
* Removed unused setters from Repository interface
* Removed unused and unfinished task filtering
Shuffled around when things needing repo ID are created.

Originally, it was at wrong place, as no configuration existed yet
for the repo
UT used "illegal" mocks, having null storage context.
Stopping thread always.

As dispose is invoked only when repo is removed
from the system, but in tests, when JVM is not stopped
but new instance of nx is started, old threads left in
dandling causing OOMs
Using ComponentSupport, optimize import
Using component support
Deprecated resource store utils.

Only one method used in only one place, so moved it in.
Updated packaging mapper.
Deprecated smart wastebasket.
Removed MetadataManager inferface, as this made a mess here
IDEA 13 EAP has (mostly) better formatting for Groovy
Merge branch 'master' into groovy-formatting
Add OPTIONS handler method to PlexusResource

This will allow CORS headers (Access-Control-Allow-Origin) among other things in restful services.
[NX-10] Fix @since tags on capabilities

Signed-off-by: Alin Dreghiciu <adreghiciu@gmail.com>
Merge pull request #240 from sonatype/NX-10-since-capabilities

[NX-10] Fix @since tags on capabilities
[NX-6] Fix @since tags on p2

Signed-off-by: Alin Dreghiciu <adreghiciu@gmail.com>
[NX-9] Fix @since tags on obr

Signed-off-by: Alin Dreghiciu <adreghiciu@gmail.com>
[NEXUS-6043] Merge ItemPathUtils into PathUtils

Signed-off-by: Alin Dreghiciu <adreghiciu@gmail.com>
[NEXUS-6107] Use plexus-utils forceMkdir() to remain compatible with java6
Merge pull request #234 from sonatype/groovy-formatting

TRIVIAL: Groovy formatting