Fix issue of lost Downloading state.

If the download is started when we are on cellualr connection, but state then goes to "Waiting for Wifi...", the previous order in this case made it so that the transfer request is never set back for this episode. This is because the NotifyPropertyChanged("ProgressBarValue") calls ProgressBar.Get which is responsible for hooking up the download progress values from the transfer request. But it checked if the transfer request was null before setting it up - which it wasn't earlier.
First version of play queue functionality.

One can now actually see the play queue as sent to the audio player, as well as tap on an item to start the playback of another item.

Unfortunately this code is so ugly that it makes your eyes bleed. We heavily need to refactor how podcast playback is started; at least unify how it's started from the episode listing and here. Now the case is that we need to update the play queue data into the DB from two places, which is just wrong, and I don't like how we have to initiate the player control explicitely. A big TODO.
Open the player UI if tapping on a playing episode instead of the episode description.
Change how lock screen buttons work.
Mark all episodes as listened to, even if they are not played.
Update CHANGES
Refactoring: Adding PodcastPlaybackManager.

PodcastPlaybackManager should be responsible for all the states related to podcast playback and be responsible for updating the episode wrt. to this. It will also take care of play history and later on the play list creation.

TODO: Switching from one played episode to another is not working.
Fixing playback issue when switching from one played episode to another.
Remove dead code in player.
Remove dead code and add track to play history if track changed in a "Playing" state.
Simply player control and move logic to PodcastPlaybackManager.

This is introduces a method to change playback to a playlist item, but this is not yet used as we don't build real playlists yet and tapping on currently playing episode doesn't do anything.
Dynamically create the status bar to handle for different status bar for diffent pivor view.
More playlist functionality implemented. Still stuff to do...

- Save playlist sort order to DB.
- Add downloaded episodes to playlist.
- Clear playlist from playlist view.
Implement first version of sorting playlist.
Do playlist sorting in the background.
Fix play queue playback when we start playback from the queue view or tap an queued item.

This also allows for starting a new playback from episode listing and then the playlist will be cleared.
Add support for adding individual episodes to play queue.
Add proper button handling for the queued view status bar button.
Don't add or do other stuff if item is already in play queue.
Add setting to automatically add downloaded episodes to play queue.