Async refresh

Move refresh of google music content to an extra thread.
This fixes two problems:

1. Very long startup times on small systems, like the raspberry pi
2. Remote changes to the content, like new/changed playlists
Split library and playlist refresh

* split library refresh from playlist refresh
* use some more sane method to schedule refresh
Move checkiing to one place
Add LRU cache for AA albums/tracks

The two caches provide information on tracks for `lookup()` calls,
reducing network IO and latency:

    flx@t420:~$ time mpc add gmusic:album:B6dlshnrjk4ucvcmyptc6p35pwi

    real	0m0.700s
    user	0m0.001s
    sys		0m0.001s

    flx@t420:~$ time mpc add gmusic:album:B6dlshnrjk4ucvcmyptc6p35pwi

    real	0m0.006s <-- dropped to 1/100 \o/
    user	0m0.001s
    sys		0m0.001s

Cache size is set to 1024 objects each.
It may make sense to increase size of the track cache.
Merge branch 'felixb-async-refresh' into develop