return to main thread when calling completion handlers