`cancel(false)` is a little confusing at call sites like this. We can make our `AsyncTaskHandle` friendlier than `AbstractFuture` by adding a methods like:

```java
public boolean cancelIfNotStarted()
{
   return cancel(false);
}

public boolean forceCancel()
{
   return cancel(true);
}