Could we have an async wrapper just like this around setupAnnotation(), too?

(In our fork, some of the processes responsible for re-attaching annotations are accessing asynchronous resources, so our version of setupAnnotation returns a promise, instead of the actual annotation.)