Cancellation Support

This PR adds support for giving cancellation tokens when enqueuing a request