Allow attaching arbitrary JavaScript functions to methods in Video player.

**Description**

As a result of a discussion in edx-platform dev IRC chat with [robertlight](https://github.com/robertlight), this PR was formed. The idea is that there should be an ability to synchronize page content with a video. For this it is ideal that the edX Video player exposes an API to attach function callbacks to a method in a Video instance. The Video instance is available via the video DOM element data attribute `video-player-state`.

So, to achieve synchronization, one would do something along the lines of:

    var state = $('.video').data('video-player-state');
    state.registerCallback('videoPlayer', 'update', function (currentTime) {
        // Callback function implementation details
    });

**Reviewers**

- @nedbat