move DummyFutureCallback to base