Rewritten code for auto-load subtitles and support for '_' as a separator.

Being a video file named video.ext, video_whatever.srt will now be auto-loaded.

This commit fixes #3195.
Give "Prefer external subtitles over embedded subtitles" option precedence over language matches.