So that the main block processor future is cancellable. We wait for the executor and then flush anything unflushed. Resolves the rest of the second part of #100