Merge branch 'favorites'

* favorites:
  Favorites added
Initial implementation of "Download" functionality.

Add methods to the service to return the URL to download a given song.

Amend the default song view context menu, add a download option.

Add a downloadSong() method to SqueezerAbstractSongListActivity which uses
ACTION_VIEW to request the song's URL, and probably trigger a download.
Merge branch 'master' into download
New Music entry added to the My music activity
New Music entry added to the My music activity
Added Favorites for dutch version
Merge branch 'new-music'

* new-music:
  New Music entry added to the My music activity
  New Music entry added to the My music activity
Support downloading songs when viewing playlists.

Re-write how the song context menu works.  The menu is now a resource
(res/menu/songcontextmenu.xml) with @+id/... for each entry.

Playlist-specific entries are maintained in their own group, and are
enabled if browsing songs in a playlist.
Initial list selection

- Refactored item views to enable discovery of current index.
- Made playerstate parcelable to be able to use it from activities and avoid using maps for list callbacks.
- Jump to currently playing song in current playlist, and indicate it visually
- Highlight the currently selected player
Refactored extended query format response handlers

Moved the interface to a separate file, and created a common base class with
standard funtionality, to make the code more DRY, and to eliminate the errors,
that I noticed.
Highlight current items

- Define styles for the text apearancces we use in squezer, and use them in layouts
- Add bold styles and use them for currently playing song and active player
Added copyright notice to new files
Fix reported crash: Receiver not registered
Merge branch 'master' into download
Use a menu resource for the per-album context menu.
Slightly de-clutter the search UI.

Remove the custom search button that appeared after the EditText control,
and its drawable.

Configure the EditText as a search control, and perform the search when
the user presses the search button on the IME.
Use a SparseArray instead of a HashMap of Integers, per lint.
Start fixing how images are downloaded.

The current code in SqueezerIconUpdater.updateIcon is called from
every getView().  getView() may be called multiple times for each
ImageView, and every time it is the image is fetched again.  So
album artwork might be downloaded two or three times for the same
ImageView.

Fix this by introducing an ImageDownloader class.  This class
maintains an in-memory cache of images that have been downloaded,
which means that not only do we stop downloading the same image
multiple times for a single ImageView, we will re-use the image for
any ImageViews on screen that should be associated with the same
image, for an even greater win.

This class is modeled on the SDK example
XmlAdapters/src/com/example/android/xmladapters/ImageDownloader.html,
but modified so that one or more ImageViews are associated with URLs,
and to use LruCache instead of the home-grown approach in that file.

SqueezerSongView has been updated to use this new method, the other
views will be modified in future commits.

Use an animation when images are displayed -- this helps highlight
any times that images are being re-downloaded when they shouldn't
be, for further work.
merged nik/master
Use the ImageDownloader class when browsing albums.

Use 'icon' instead of 'image' in SqueezerPluginItem to reflect
the results from the server.

Add additional comments in places.