Refactorisation of earlier patches

The copy-construction of the CMusicDbUrl objects is now done within
GetFileItemFromDataset(). Total amount of work done is the same, except for
trivial cases, but this makes it harder for new callers that might be added
in future to call it incorrectly.