fix seeking in ffmpeg

When playing with ffmpeg plugin and user seeks to the beginning of track, cmus
wouldn't immediately start from the beginning, but would continue playing for
a while (about 3~5 seconds), and then suddenly jump to the beginning.

A segment of code is added in ffmpeg_seek() to flush the decoded output and
reset the input buffer. This should make it jump immediately, but the current
duration after jump is still not precise.
Support XDG directories with backwards compatibility. Fixes #33.

To determine where the configuration files are located, the logic
is as follows:

- CMUS_HOME takes priority, as before.
- ~/.cmus is used if it already exists, to maintain backward
  compatibility.
- New users default to XDG_CONFIG_HOME/cmus, or ~/.config/cmus if
  XDG_CONFIG_HOME is unset.

To determine where the socket is located is a bit more simple:

- XDG_RUNTIME_DIR/cmus-socket if XDG_RUNTIME_DIR is set.
- Otherwise, name it 'socket' in the config directory, as before.
Updated documentation to use XDG paths.
Merge branch 'master' into show-all-tracks