keep current song in a dedicated variable playlist.songs[play_off] is not a good representation for the current playing song after all. After a `load' command, or a flush request, the play_off changes but we're still playing the "old" song. This saves the current song in a dedicated variable that's updated upon playlist_advance and playlist_previous, thus givin a more accurate view.

add `jump' subcommand to play the first matching

add playlist_swap

add playlist_free

add playlist_push

add next and prev command

drop songs from the playlist on error

initial commit