On handling downloaded songs and offline playback, my personal (but informed) opinion is that there is:
some licensing reasons for it to be more complicated than strictly necessary
lack of interest of supporting an app feature that doesn't drive numbers immediately up (sure, I agree that a better offline experience would improve the product and help user retention, but it isn't easy/quick to measure its impact), and
lack of ownership with many teams having to support a functionality (keep the app working offline) within all the various app features they own.
So, just as a dog with multiple owners, it goes neglected and starves.