Add flatcollection view
Only connect slots if needed
Factor out data we read from the sql-query
Cache Source objects locally
Reuse existing Track object
Faster Query comparison.

Changed the return value of some functions to a reference. All these
functions return the contents of members, i.e. addresses on the heap.
Faster cacheKey
Don't use QRegExp if we can have a built-in function
Only load used fields
[qt5] Compiletime resolve very often used signals
Only notify about resolver removed event if it actually makes a difference (and the Pipeline is not shutting down)
Disallow re-resolving of DatabaseCollection Tracks
The result is independent from the online state of the Collection
Merge pull request #242 from tomahawk-player/flat-collection

Flat collection