Skip unloadable tracks in the AutoDJ queue. Fixes Bug #1396931.

* On track load failed remove the failed track from the queue and load
  the next track from the queue to the deck.
* Update existing on-enable test cases to check what happens after
  receiving track load success signals.
* Add test case for ADJ_ENABLE_P1LOADED state failing to load the
  first track.
* Add test case for ADJ_ENABLE_P1LOADED state failing to load the
  second track after successfully loading the first track.
* Add test cases for single-deck-playing AutoDJ enable failing to load a
  track in the non-playing player.
* Add test cases for P1FADING / P2FADING mode successfully loading a
  track and failing to load a track.
Add a note to prevent removal of a redundant looking set.
Fix comment.
Wait until the first track load request succeeds before removing the
track from the queue.

If the first track in the queue fails to load then the track that is
eventually loaded is not removed from the queue and the second track
loaded by AutoDJ will be a duplicate of the first track. Fix this by
waiting until the first track starts playing in the ADJ_ENABLE_P1LOADED
state to remove the track from the queue.
Spacing.
Merge branch 'autodj'