This includes both the async and sync APIs. This is the umbrella bug that will cover the whole task; I'll log more bugs for the smaller pieces, so that we can have roughly one reasonably-sized patch per bug.
See bug 22725 for some history.
This bug depends on bugs 22725, 34991, 34992, 34994, 34995, and 34996.
Fixing comment to fix autolinks:
This bug depends on bug 22725, bug 34991, bug 34992, bug 34994, bug 34995, and bug 34996.
Added one more new bug and put them in the depends-on field.
All blocking bugs have been closed. Closing this bug too.