Add thread safety to swr context

swr used to be a global variable in ffmpeg.c, but it would cause crash when
auto-continue is enabled and cmus is started again. In this case, cmus would
play the song not finished on last exit, and (probably) use ffmpeg_open() to
load that song.

But on the other hand, cmus would still load a new track, but just wouldn't go on
to play it (which is possibly a bug). This happened in another thread, where
ffmpeg_open() was called again and the global variable "swr" caused crash.

Now swr context is a member of struct ffmpeg_private, and a new instance is
created every time ffmpeg_open() is called.