Added video time tracking.

This only works by sheer coincidence. Promises are async by default. They are guaranteed to be called after everything else has executed so there is a case where the value returned will be undefined (happens before the player has been loaded. For example when the user has a flash blocker).

To fix this return a promise instead of the value.

```javascript
var deferred = when.defer();

_loaded.promise.then(function() {
    deferred.resolve(data);
});

return deferred;
```