new Task based overloads, compatible with await