First attempt to move audio logic to separate command classes.
Basic plumbing for player commands underway. Defunct. Work in progress.
Fixed a reference bug causing 'this' to get lost.
Merge branch 'master' into play-controllers
Work in progress: basic playing working but many bugs.
Added documentation and made the attach and detach methods private.
Updated changelog.
Merge branch 'master' into play-controllers
More playback related bugfixes.
Moved timeupdate logic to progress callback.
Very large refactoring of load() and playSegmentOffset() methods.
Very large refactoring of load() and playSegmentOffset() methods.
Clearing up book loading in load() method.

Trying to debug "Loading book" message - still not working.
Removing unnecessary comment (this can be handled by the then() method in jQuery.Deferred().
Fixed bug in load() method on player.
Fixed clicking play/pause.

Added stop() method to player that causes any playback to stop and returns the current play command (if any).

Fixed bug in play command class that caused event listeners to be left bound the the player after the command had finished.
Merge branch 'master' into play-controllers
Enabled instrumentation using old event handlers.

Fixed audio glitch when clicking play.

Added segment fetch timeout handler.
Fixed bug in stop() method.
Player commands no longer pass calls to progress() if they have been cancelled.