action_client: support delayed cancellation

Delayed cancellation allows for omitting the cancellation topic as long
as it's not needed and only publish when cancellation is actually
requested.