Fixes #853879 - Read multiline cues, handle invalid cuetimes better, etc

I'm just opening this to see the diff clearly so that I can split this up into smaller components