Buffer DB updates of playmode to reduce writes.
Effectively suppress duplicate Radio menu entries. Use same weight
values for locally defined TuneIn menu as for the one provided by
mysb.com
Show artwork for remote streams
Keep track of station icons to be displayed in Now Playing screens etc.
Aggressively cache artwork URLs for http streams.
Do a relatively cheap check on the cache before updating it.
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
Might as well use TuneIn's subtext data as line2

Change-Id: I32d9fcacf6de91008628ff7ac8b726068b01a9b3
Merge branch 'public/7.7' into public/7.8
Re-implement Podcast plugin

- make OPMLBased
- add custom XML browser
- add support for progress tracking: allow user to continue where he
left
Re-implement Podcast plugin

- pause progress reporting when playback is paused
- format time strings
Allow drilling down feeds
Re-implement Podcast plugin

Tweak custom podcast parser to fix ip3k browsing.
Re-implement Podcast plugin

Remove default streams - none of them was working any more.
Initialize settings module if web is enabled.
Re-implement Podcast plugin

The Podcast plugin is not being used on mysb.com. Remove some more code.
Re-implement Podcast plugin

Link to podcast stream managed on mysb.com.
Merge branch 'public/feature/podcast-v2' into public/7.8

Change-Id: I99e28a75aafa0134efcabfd9a6dc63930b390736
Bug 18036: LMS is leaking memory due to disconnected clients

When long-polling Cometd clients disconnect unexpectedly (eg. mobile app
being killed by the OS, or suspended), the client object would continue
to queue up notification events. Kill long-polling clients after 3mins
of inactivity.
Changelog update
Merge branch 'public/7.7' into public/7.8