add callback for metadata update

NodePlayer::play is both loading the track and immediately playing it, even if it might not be loaded yet.
Add a callback for metadata updates, so it is possible to retry playing the track.