Buffer DB updates of playmode to reduce writes.
Do not persist StreamingController TRACKWAIT state

Presisting StreamingController state is only done so that it can be
restored in SlimService in another instance. The TRACKWAIT state is used
when asynchronous callback of a closure is expected and such state cannot
be meaningfully restored.

Rely on subsequent event (possibly resent by player after reconnect)
to trigger next action

Change-Id: I2cd85e18b34302589e39c4366e1be66a8cd9163b
Merge branch 'public/7.7' into hotfix/delayed-playmode-write
Simplify buffering
Unify artwork handling: user coverid > artwork_track_id > artwork_url in
all interfaces.

Bug: 17635 - Search results have album art instead of track art
Enable native ALAC streaming if player supports it.
More track/album artwork cleanup: playlists need to use coverid over
artwork_track_id, too. Extend playlist browsing to support two
(device)/three (web) line display when browsing playlists.

Bug 16409: Playlists menu should show album/artist
Merge branch 'hotfix/delayed-playmode-write' into public/7.7
Merge branch 'public/7.7' into public/10.0

Change-Id: I51c607718bc79f78ed7a9f1372d7e4ed52bf9b17