#3 feat: add observable task to allow execution callbacks

ObservableTask is a foundation for adding custom callbacks for task
execution.