Added support for Promise progress handlers and cancellation, and associated unit tests.

Added Deferred.update() for dispatching progress updates to Promise onProgress handlers.
Added support for Promise onProgress handler registration via then().
Implemented progress update propagation with progress update transformation.
Implemented Promise.cancel() to support canceling a Promise via rejection with a CancellationError.
Added JSDuck documentation comments.
Added corresponding Mocha unit tests.
Updated distribution build.