Stage 1: remove use of database and index from core consumers (move implementation into respective database and index modules)

Done!

Stage 2: separate model from JPOX annotated classes, centralising JPOX use in database

Done!

Stage 3: add a basic repository querying API for base artifact information and retrieval of metadata

* RSS, browse
* consider repository-api refactorings
* replace archiva-model with separated repository APIs
* at this point, should be able to have functional Archiva without a database
* note that metadata need not be stored with the artifacts themselves, but will be by default

Stage 4: incorporation of event API

* used to centralise arrival, removal, etc of files/artifacts in the repository
* errors should be events as well to avoid exceptions in the logs and instead meaningful handling/reporting
* could also be used for configuration events
* consider hooking the audit log to this as well

Stage 5: isolate scanning code

* Repository should operate without scanning code, it should push events if enabled
* better assessment of its progress, performance
* removal of database / repository scanning duality - all operations are driven by the event bus
* move some database operations to a housekeeping scheduled task (same for index), make scheduled tasks a listable item based on available plugins

