Async content api

Have switched over to the Async content api.

Still one or two TODOs, but nearly ready for the big time.

Also doing some perf tests.