added tests for cancellation state around execute method
extracted Future creation process
introduced logic behind cancelation
fixed code for failing tests
tested multi-cancellation