Added logic so userId is retrieved via getUser method if it isn't available via response from addDevice method
added "maven.compiler.source" + "maven.compiler.target" properties. This
helps compiling under Debian where these still default to Java1.5 and
result in compile errors
ignore eclipse settings file as this project is managed by Maven
PlayerStatus now approximates the seekPosition when in status "playing".
The property "seekPosition" should still be synchronized to the actual
player regularly but now gives good intermediate results.
PlayerManager needs a 'setSeekPos' method. PlayerCommandService needs to call it.
After moving tracks, PlayerCommandService needs to send notifications (playlistChangedNotification and playerStatusChangedNotification for the playbackQueuePos which might have changed)
fix tests
Set compiler target/source to 1.6
Changed setSeekPos to setSeekPosition
From: https://github.com/bluegaspode/ickstream-java-common/commit/5f9a8c0a47d3a3778597ae040ec0798ffcd4d812?w=1
PlayerCommandService is using a "syncObject" now.
All access to 'playerStatus' will be synchronized against this syncObject.
It is assumed that a PlayerManager will do likewise manipulate the 'playerStatus' on its own thread based on the actual playerstate.
By using the syncObject it can be guaranteed that remote calls and internal state changes don't get into each others way.
From: https://github.com/bluegaspode/ickstream-java-common/commit/79908a64cfde0b98f2523d23cf35dedbf92bbbf2
code-cleanup: extract local variables for complex boolean operations
https://github.com/bluegaspode/ickstream-java-common/commit/c21e5b943ae747e7b8e494c00bfff8bcef8e2864
bugfix: avoid ArrayOutOfIndexException, when currentPos=0 and queue is
From: https://github.com/bluegaspode/ickstream-java-common/commit/8a963a72d80567efbf4586edb75eef42d14b7f1b
bugfix: calling setPlaybackQueueMode(QUEUE_SHUFFLE | QUEUE_SHUFFLE_REPEAT) didn't send a PlayerStatusChanged-Notification
when no track (or only one) track existed in the queue.

Fix as follows:
- new 'internalShuffleTracks' method that doesn't send events
- 'shuffleTracks' does send events (playbackQueueChanged +
playerStatusChanged) on its own (only when tracks were shuffled)
- 'setPlaybackQueueMode(QUEUE_SHUFFLE)' always sends a
playerStatusChanged. Sends playbackQueueChanged only when tracks were
actually shuffled.
From: https://github.com/bluegaspode/ickstream-java-common/commit/3fd09f794cbdb28973566bf36b1b446b7ed5126d
bugfix: setPlaybackQueuePos(QUEUE|QUEUE_REPEAT) reverts the playlist to the originally ordered playlist. It didn't send the corresponding playlistQueueChanged and playerStatusChanged notifications. This has been fixed.
Added 3 new testcases to confirm that a playerStatusChangedNotification
is sent when changing the playbackQueueMode on an empty playbackQueue
Reformatted code
Removed hardwareId from getPlayerConfiguration response
Added back playerModel attribute in getPlayerConfiguration response
Removed hardwareId from setPlayerConfiguration
Removed support for setting accessToken through setPlayerConfiguration