Refactored Playlist, added EndReached handling