Merge remote-tracking branch 'kaaholst/develop' into develop

* kaaholst/develop: (37 commits)
  Fix responsiveness of volume seekbars in player list
  Fix some lint errors
  Fix race in player dropdown
  Updated SqueezePlayer integration
  Update to Gradle 0.11 and SDK 19.1.0.
  Fix bug in connection callback
  SqueezePlayer integration
  Move the connection change callback to its own type
  Player list discover player changes
  Control volume in player list
  Support player sleep
  Substitute View.setlpha with Drawable.setAlpha
  Move onRestoreInstanceState to onCreate
  Rename player
  Do not reorder players if we already have them
  Update player icons and add icon for squeezeplayer
  Add power controls to player list
  Fix power menu not updated on select of a powered off player
  Remember selected artist when select to browse songs
  Remove unused menu xml file
  ...

Conflicts:
	Squeezer/build.gradle
	gradle/wrapper/gradle-wrapper.properties
Update NEWS to reflect Kurt's recent work.
Ensure that all player state is saved when it changes.

Fixes a bug where CurrentPlaylistActivity was not highlighting the
correct song because the current song was not being updated when
the player state changed.
Re-order the location of the update*() methods to keep them together.

Add JavaDoc.
Mark variables that can be marked as final.
Remove unused imports.
Remove unnecessary " extends Object".
Remove an unnecessary null check.
Remove unnecessary null check for wifiLock.
Use the enhanced for-loop syntax.
Add a unit test for ImageCache.hashKeyForDisk().
Use Guava's MD5 hash and hash-to-string functions.
Refine CurrentPlaylistActivity actionbar items.

- Don't show the item to go to CurrentPlaylistActivity if in
  CurrentPlaylistActivity.

- Put the "Clear" and "Save" playlist items first so they are readily
  available.
Merge branch 'lint' into develop

* lint:
  Use Guava's MD5 hash and hash-to-string functions.
  Add a unit test for ImageCache.hashKeyForDisk().
  Use the enhanced for-loop syntax.
  Remove unnecessary null check for wifiLock.
  Remove an unnecessary null check.
  Remove unnecessary " extends Object".
  Remove unused imports.
  Mark variables that can be marked as final.
Use 'com.android.application' as the Android Gradle plugin.
Update to Guava 17.0.0.
Use v20 of the Support and AppCompat libraries.
Start supporting apps.

- Show the Apps menu in the Home activity.

- List the things an app can do when it's selected.
Support plugins that return "networkerror".

- Implement a dialog fragment that can display the error from the plugin.

- Show the dialog if the plugin returns "networkerror".
Implement "My Apps" support using the MyApps plugin, not the "apps" command.

The "My Apps" plugin returns apps that have been installed via
mysqueezebox.com, which appears to match the behaviour of other remote
control apps and the web UI on the server.

- The individual apps are returned as plugin items, so adjust the classes
  that ApplicationListActivity and ApplicationView inherit from.

- Add a new MY_APPS plugin type to request and manage the information.