SVN_SILENT made messages (.desktop file)
Extend capabilities of CollectionTestImpl

Collections::CollectionTestImpl can now be a target of track insertion
through Collections::CollectionLocationTestImpl, and implements
trackForUrl( KUrl ) method used by Collections::CollectionManager.
Add support for statistic modification to MetaMock
Modify ITunesImporter family to be testable
Modify FastForwardImporter family to be testable

Includes a fix for a problem where subsequent uses of
FastForwardImporter would raise a warning from QSqlDatabase,
"connection already used."
Implement ITunesImporter test suite

TestITunesImporter inherits from TestImportersCommon, a ready
infrastructure for shared test logic.
Implement FastForwardImporter test suite
Fix for TestImportersCommon::blockingImport()

Use queued connections for EventLoop::stop() to avoid race conditions.
Fix importer tests' linking problems under GCC
Fix for includes in DatabaseImporter class

Include 'forward_declarations.h' instead of 'Meta.h' .
Provide implementation for methods of StatSyncing::Track

Add default, empty implementations of StatSyncing::Track methods that
are used for write-synchronization. Read-only applications of
StatSyncing now require less boilerplate.
Remove boilerplate from LastFm track implementation

Empty implementations of methods used for writing statistics are no
longer needed in LastFm's SynchronizationTrack class
Add new buttons for metadata config tab

Created 'Add' and 'Configure' buttons. Currently non-functional.
Add initial implementation for FastForwardProvider

Both FastForwardProvider and FastForwardTrack are implemented, but they
are to be treated as prototypes. The importers' structure will change
when more importers are implemented (deduplication). The implementation
may be buggy until tests are implemented.
Replace forced signal-slot pairs with invokeMethod

Use QMetaObject::invokeMethod() instead of emit foo() -> slotFoo() for
blocking connections in FastForwardTrack and FastForwardProvider.

invokeMethod() takes QObject*, so const_cast had to be used in
FastForwardTrack methods. In return, lazily initialized members
no longer have to be marked with 'mutable'.
Expand StatSyncing Provider and Controller

Expand StatSyncing::Controller with
 * method handling Plugins::PluginFactory: handleNewFactories, much in
 the vein of Collections::CollectionManager's handleNewFactories
 * createProviderDialog method, raising a dialog populated with
 available factory types
 * createProvider method, creating a new Provider using right factory

Expand StatSyncing::Provider with
 * configWidget method, returning an instance of ProviderConfigWidget
 used for provider instance configuration
 * isConfigurable method

Expand StatSyncing::Provider family with
 * ProviderConfigWidget abstract class, base for configuration widgets
 * ProviderFactory abstract class, inheriting from
 Plugins::PluginFactory

Add StatSyncing::CreateProviderDialog, a dialog used for configuring
new provider instances.
Include importers into the plugin infrastructure

A few small changes for the plugin infrastructure to recognize
"Importer" plugins.
Connect "Add" button in metadata config

"Add" button now triggers StatSyncing::Controller's
createProviderDialog method.
Lay foundations of common importer framework

Add classes StatSyncing::ImporterProvider, a common base class for
importer's provider implementation; and StatSyncing::ImporterFactory,
a common base class for Plugins::PluginFactory derived importer
factories.
Make fastforward importer work with Importer base

 * add FastForwardFactory subclass of StatSyncing::ImporterFactory
 * rework configuration method to use QVariantMap and utilize config
 widget
 * fix SQL-connected errors in FastForwardProvider and FastForwardTrack
 * add amarok_importer-fastforward.desktop file for plugin description