Removing StreamRanker reduced track matching to direct index reuse. When a
next episode has a different audio/subtitle track layout (common with anime
multi-sub releases or mixed sources), the stored index points at the wrong
track. StreamRanker scores by codec/language/title/relative index and only
applies a match above threshold, otherwise falls back to media defaults.
Restores utils/streamRanker.ts and its use in getDefaultPlaySettings so the
cleanup PR stays behavior-preserving for playback.