make wait() and friends return reference to self instead of new Future