Bin::flush() now calls upcxx::drain() [experimental]

This requires the drain() function to be implemented in upcxx, which is
responsible for fully flushing the local task queue. This is an
experimental feature in my own branch of upcxx.