A few impovements:

- Added new exception: cancelled_exception
- Added two new parameters: CANCEL_FUNCTION and PROGRESS_FUNCTION to provide more capabilities to control
  the flow
- Improved method descriptions with some macroses