dmix: Gradle updates.
MPDServerException: Add more robust and flexible error handling.

This commit extracts the error code, the command queue position, the command
sent and the ACK error message from the standard ACK error message for use
directly from the exception. This should allow for improved error handling and
cleaner error internationalization.

This commit also allows adding ACK codes to the command constructor to be
considered non-fatal, thus not throw exception.

This commit also adds the permission ACK to the password ACK which will not
allow retries of the current command.
Music: Improve ArrayList initial sizing.
MPDNoResponseException: Remove redundant exception.
MPDClientException: Remove overly broad and unused exception.
MPDConnection: Tiny cleanup of getCommands().
MPDConnection: If ACK is received on connection, consider it a bogus response.
NowPlayingFragment: Clear up some issues with the ratings.
MPDConnectionException: Replace with IOException.

MPDConnectionException should not extend MPD*Exception. Looking further into it
I came to the conclusion that it did nothing beyond what an IOException does.

This revision also moves MPDServerException to MPDException, as it was
redundant at this point as well.

It may come back in the future, if there is some interesting way to extend it,
but if it does, it will extend IOException.
MPDConnection: CommandProcessor() cleanups.
Merge branch 'develop' of https://github.com/abarisain/dmix into develop
correct argument sequence when calling Item.merged
remove the "Unkown AlbumArtist" when returning merged artist list

fixes #639