don't crash on invalid JSON, fix query counting as not to leave a bunch of other songs off the end of the list