MusicMetadata: cache the actual URL of the file when found

This saves the result of the file search so the expensive lookup is done
only once.

Changing MusicMetadata:Filename() to non constant had a ripple effect up the MetaIO*
classes which is why this seems to touch more files than needed.