[Sequence] Fix race condition causing channel data blanking to not work

Sometimes the blanking routine would not work because we were still
sending the previous data.  This commit adds a delay in the blanking
routine to make sure all previous data has been sent since this
function is sometimes called outside the normal channel output thread.
[Playlist] Fix bug in playlist stage change processing

When a playlist ended by itself as a result of calling
PlayListPlayingProcess(), we were not detecting the state change
to the idle state and properly cleaning up the playlist.  By
separating the not-Idle and Idle if statements, we will catch
the new Idle state and act accordingly.  I believe this fixes
a couple issues which have been discussed recently.